Udemy

Platform

English

Language

Programming Languages

Category

Java Programming for Complete Beginners

Learn Java Programming with 200+ examples. For Java Beginners. Learn Java Object Oriented Programming Now.

4.44 (14215 reviews)

96825

Students

26 hours

Content

Nov 2020

Last Update
$59.99
Regular Price

Topics


What you will learn

You will Learn Java the MODERN WAY - Step By Step - With 200 HANDS-ON Code Examples

You will Understand the BEST PRACTICES in Writing High Quality Java Code

You will Solve a Wide Range of Hands-on Programming EXERCISES with Java

You will Learn to Write AWESOME Object Oriented Programs with Java

You will Acquire ALL the SKILLS to demonstrate an EXPERTISE with Java Programming in Your Job Interviews

You will learn ADVANCED Object Oriented Programming Concepts - Abstraction, Inheritance, Encapsulation and Polymorphism

You will learn the Basics of Object Oriented Programming - Interfaces, Inheritance, Abstract Class and Constructors

You will learn the Basics of Programming - variables, choosing a data type, conditional execution, loops, writing great methods, breaking down problems into sub problems and implementing great Exception Handling

You will learn Basics of Functional Programming with Java

You will gain Expertise in using Eclipse IDE and JShell

You will learn the basics of MultiThreaded Programming - with Executor Service

You will learn about a wide variety of Java Collections - List, Map, Set and Queue Interfaces


Description

Zero Java Programming Experience? No Problem.

Do you want to take the first steps to Become a Great Java Programmer? Do you want to Learn Java Step By Step in a Fail Safe in28Minutes Way? Do you want to Learn to Write Great Java Programs? Do you want to Learn to develop Object Oriented Java Applications?


WHAT OUR LEARNERS ARE SAYING:

5 STARS - it's an awesome course , i was a complete beginner and it helped me a lot. One of the best courses i have every taken on Udemy.

5 STARS - This is the best Java course I've come across. It's straight to the point without any missing details. You can get an idea of what you're getting into working with Java fast with this course. I really like it.

5 STARS - The experienece was extremely amazing. The course was highly detailed and comprehensive and all the topic were covered properly with due examples to their credit. The instructor is passionate about what he is doing and hence it makes the course much more worth to learn. Kudos to the instructor for such an amazing job.

5 STARS - Never thought taking an online course will be so helpful. The instructor is quite engaging, gives good amount of exercises.

5 STARS - This course is wonderful! I really enjoy it. It really is for beginners, so it's very helpful for people which don't know nothing about programming.

5 STARS - Very comprehensive and detail course the instructor takes the patience to explain everything and goes a step forward in thinking what kind of errors could happen to the students really good instructor.

5 STARS - It's very well thought out. I enjoy the constant exercises and the challenge they present to make things happen.


COURSE OVERVIEW

Java is one of the most popular programming languages. Java offers both object oriented and functional programming features.

We take a hands-on approach using a combination of JShell and Eclipse as an IDE to illustrate more than 200 Java Coding Exercises, Puzzles, and Code Examples. This course assumes no previous ( beginner ) programming or Java experience. If you’ve never programmed a computer before, or if you already have experience with another programming language and want to quickly learn Java, this is a perfect course for you.

In more than 250 Steps, we explore the most important Java Programming Language Features

  • Basics of Java Programming - Expressions, Variables, and Printing Output

  • Java Operators - Java Assignment Operator, Relational and Logical Operators, Short Circuit Operators

  • Java Conditionals and If Statement

  • Methods - Parameters, Arguments, and Return Values

  • Object-Oriented Programming - Class, Object, State, and Behavior

  • Basics of OOPS - Encapsulation, Abstraction, Inheritance, and Polymorphism

  • Basics about Java Data Types - Casting, Operators and More

  • Java Built-in Classes - BigDecimal, String, Java Wrapper Classes

  • Conditionals with Java - If Else Statement, Nested If Else, Java Switch Statement, Java Ternary Operator

  • Loops - For Loop, While Loop in Java, Do While Loop, Break and Continue

  • Immutability of Java Wrapper Classes, String and BigDecimal

  • Java Dates - Introduction to LocalDate, LocalTime and LocalDateTime

  • Java Array and ArrayList - Java String Arrays, Arrays of Objects, Primitive Data Types, toString and Exceptions

  • Introduction to Variable Arguments

  • Basics of Designing a Class - Class, Object, State and Behavior. Deciding State and Constructors.

  • Understanding Object Composition and Inheritance

  • Java Abstract Class and Interfaces. Introduction to Polymorphism.

  • Java Collections - List Interface(ArrayList, LinkedList and Vector), Set Interface (HashSet, LinkedHashSet and TreeSet), Queue Interface (PriorityQueue) and Map Interface (HashMap, HashTable, LinkedHashMap and TreeMap() - Compare, Contrast and Choose

  • Generics - Why do we need Generics? Restrictions with extends and Generic Methods, WildCards - Upper Bound and Lower Bound.

  • Functional Programming - Lambda Expression, Stream and Operations on a Stream (Intermediate Operations - Sort, Distinct, Filter, Map and Terminal Operations - max, min, collect to List), Functional Interfaces - Predicate Interface, Consumer Interface, Function Interface for Mapping, Method References - static and instance methods

  • Introduction to Threads and MultiThreading - Need for Threads

  • Implementing Threads - Extending Thread Class and Implementing Runnable Interface

  • States of a Thread and Communication between Threads

  • Introduction to Executor Service - Customizing the number of Active Threads. Returning a Future, invokeAll, and invokeAny

  • Introduction to Exception Handling - Your Thought Process during Exception Handling. try, catch, and finally. Exception Hierarchy - Checked Exceptions vs Unchecked Exceptions. Throwing an Exception. Creating and Throwing a Custom Exception - CurrenciesDoNotMatchException. Try with Resources - New Feature in Java 7.

  • List files and folders in Directory with Files list method, File walk method and find methods. Read and write from a File.


COURSE HIGHLIGHTS

Introduction to Java Programming with Jshell using Multiplication Table

Step 00 - Getting Started with Programming
Step 01 - Introduction to Multiplication Table challenge
Step 02 - Launch JShell
Step 03 - Break Down Multiplication Table Challenge
Step 04 - Java Expression - An Introduction
Step 05 - Java Expression - Exercises
Step 06 - Java Expression - Puzzles
Step 07 - Printing output to console with Java
Step 08 - Printing output to console with Java - Exercise Statements
Step 09 - Printing output to console with Java - Exercise Solutions
Step 10 - Printing output to console with Java - Puzzles
Step 11 - Advanced Printing output to console with Java
Step 12 - Advanced Printing output to console with Java - Exercises and Puzzles
Step 13 - Introduction to Variables in Java
Step 14 - Introduction to Variables in Java - Exercises, and Puzzles
Step 15 - 4 Important Things to Know about Variables in Java
Step 16 - How are variables stored in memory?
Step 17 - How to name a variable?
Step 18 - Understanding Primitive Variable Types in Java
Step 19 - Understanding Primitive Variable Types in Java - Choosing a Type
Step 20 - Java Assignment Operator
Step 21 - Java Assignment Operator - Puzzles on Increment, Decrement, and Compound Assignment
Step 23 - Java Conditionals and If Statement - Introduction
Step 24 - Java Conditionals and If Statement - Exercise Statements
Step 25 - Java Conditionals and If Statement - Exercise Solutions
Step 26 - Java Conditionals and If Statement - Puzzles
Step 27 - Java For Loop to Print Multiplication Table - Introduction
Step 28 - Java For Loop to Print Multiplication Table - Exercise Statements
Step 29 - Java For Loop to Print Multiplication Table - Exercise Solutions
Step 30 - Java For Loop to Print Multiplication Table - Puzzles
Step 31 - Programming Tips: JShell - Shortcuts, Multiple Lines and Variables TODO Move up
Step 32 - Getting Started with Programming - Revise all Terminology

Introduction to Method with Multiplication Table

Step 00 - Section 02 - Methods - An Introduction
Step 01 - Your First Java Method - Hello World Twice and Exercise Statements
Step 02 - Introduction to Java Methods - Exercises and Puzzles
Step 03 - Programming Tip - Editing Methods with JShell
Step 04 - Introduction to Java Methods - Arguments and Parameters
Step 05 - Introduction to Java Method Arguments - Exercises
Step 06 - Introduction to Java Method Arguments - Puzzles and Tips
Step 07 - Getting back to Multiplication Table - Creating a method
Step 08 - Print Multiplication Table with a Parameter and Method Overloading
Step 09 - Passing Multiple Parameters to a Java Method
Step 10 - Returning from a Java Method - An Introduction
Step 11 - Returning from a Java Method - Exercises
Step 99 - Methods - Section Review

Introduction to Java Platform

Step 00 - Section 03 - Overview Of Java Platform - Section Overview
Step 01 - Overview Of Java Platform - An Introduction - java, javac, bytecode and JVM
Step 02 - Java Class and Object - First Look
Step 03 - Create a method in a Java class
Step 04 - Create and Compile Planet.java class
Step 05 - Run Planet class with Java - Using a main method
Step 06 - Play and Learn with Planet Class
Step 07 - JDK vs JRE vs JVM

Introduction to Eclipse - First Java Project

Step 01 - Creating a New Java Project with Eclipse
Step 02 - Your first Java class with Eclipse
Step 03 - Writing Multiplication Table Java Program with Eclipse
Step 04 - Adding more methods for Multiplication Table Program
Step 05 - Programming Tip 1 : Refactoring with Eclipse
Step 06 - Programming Tip 2 : Debugging with Eclipse
Step 07 - Programming Tip 3 : Eclipse vs JShell - How to choose?

Introduction To Object Oriented Programming

Step 00 - Introduction to Object Oriented Programming - Section Overview
Step 01 - Introduction to Object Oriented Programming - Basics
Step 02 - Introduction to Object Oriented Programming - Terminology - Class, Object, State and Behavior
Step 03 - Introduction to Object Oriented Programming - Exercise - Online Shopping System and Person
Step 04 - Create Motor Bike Java Class and a couple of objects
Step 05 - Exercise Solutions - Book class and Three instances
Step 06 - Introducing State of an object with speed variable
Step 07 - Understanding basics of Encapsulation with Setter methods
Step 08 - Exercises and Tips - Getters and Generating Getters and Setters with Eclipse
Step 09 - Puzzles on this and initialization of member variables
Step 10 - First Advantage of Encapsulation
Step 11 - Introduction to Encapsulation - Level 2
Step 12 - Encapsulation Exercises - Better Validation and Book class
Step 13 - Introduction to Abstraction
Step 14 - Introduction to Java Constructors
Step 15 - Introduction to Java Constructors - Exercises and Puzzles
Step 16 - Introduction to Object Oriented Programming - Conclusion

Primitive Data Types And Alternatives

Step 00 - Primitive Data Types in Depth - Section Overview
Step 01 - Basics about Java Integer Data Types - Casting, Operators and More
Step 02 - Java Integer Data Types - Puzzles - Octal, Hexadecimal, Post and Pre increment
Step 03 - Java Integer Data Types - Exercises - BiNumber - add, multiply and double
Step 04 - Java Floating-Point Data Types - Casting, Conversion and Accuracy
Step 05 - Introduction to BigDecimal Java Class
Step 06 - BigDecimal Puzzles - Adding Integers
Step 07 - BigDecimal Exercises - Simple Interest Calculation
Step 08 - Java Boolean Data Type - Relational and Logical Operators
Step 09 - Java Boolean Data Type - Puzzles - Short Circuit Operators
Step 10 - Java Character Data Type char - Representation and Conversion
Step 11 - Java char Data Type - Exercises 1 - isVowel
Step 12 - Java char Data Type - Exercises 2 - isDigit
Step 13 - Java char Data Type - Exercises 3 - isConsonant, List Upper Case and Lower Case Characters
Step 14 - Primitive Data Types in Depth - Conclusion

Conditionals

Step 00 - Conditionals with Java - Section Overview
Step 01 - Introduction to If Else Statement
Step 02 - Introduction to Nested If Else
Step 03 - If Else Statement - Puzzles
Step 04 - If Else Problem - How to get User Input in Java?
Step 05 - If Else Problem - How to get number 2 and choice from user?
Step 06 - If Else Problem - Implementing with Nested If Else
Step 07 - Java Switch Statement - An introduction
Step 08 - Java Switch Statement - Puzzles - Default, Break and Fall Through
Step 09 - Java Switch Statement - Exercises - isWeekDay, nameOfMonth, nameOfDay
Step 10 - Java Ternary Operation - An Introduction
Step 11 - Conditionals with Java - Conclusion

Loops

Step 00 - Java Loops - Section Introduction
Step 01 - Java For Loop - Syntax, and Puzzles
Step 02 - Java For Loop - Exercises Overview and First Exercise Prime Numbers
Step 03 - Java For Loop - Exercise - Sum Upto N Numbers and Sum of Divisors
Step 04 - Java For Loop - Exercise - Print a Number Triangle
Step 05 - While Loop in Java - An Introduction
Step 06 - While Loop - Exercises - Cubes and Squares upto limit
Step 07 - Do While Loop in Java - An Introduction
Step 08 - Do While Loop in Java - An Example - Cube while user enters positive numbers
Step 09 - Introduction to Break and Continue
Step 10 - Selecting Loop in Java - For vs While vs Do While

Reference Types

Step 00 - Java Reference Types - Section Introduction
Step 01 - Reference Types - How are they stored in Memory?
Step 02 - Java Reference Types - Puzzles
Step 03 - String class - Introduction and Exercise - Print each word and char on a new line
Step 04 - String class - Exercise Solution and Some More Important Methods
Step 05 - Understanding String is Immutable and String Concat, Upper Case, Lower Case, Trim methods
Step 06 - String Concatenation and Join, Replace Methods
Step 07 - Java String Alternatives - StringBuffer and StringBuilder
Step 08 - Java Wrapper Classes - An Introduction - Why and What?
Step 09 - Java Wrapper Classes - Creation - Constructor and valueOf
Step 10 - Java Wrapper Classes - Auto Boxing and a Few Wrapper Constants - SIZE, BYTES, MAX_VALUE and MIN_VALUE
Step 11 - Java Dates - Introduction to LocalDate, LocalTime and LocalDateTime
Step 12 - Java Dates - Exploring LocalDate - Creation and Methods to play with Date
Step 13 - Java Dates - Exploring LocalDate - Comparing Dates and Creating Specific Dates
Step 14 - Java Reference Types - Conclusion

Arrays and ArrayLists

Step 00 - Introduction to Array and ArrayList - Section Introduction with a Challenge
Step 01 - Understanding the need and Basics about an Array
Step 02 - Java Arrays - Creating and Accessing Values - Introduction
Step 03 - Java Arrays - Puzzles - Arrays of Objects, Primitive Data Types, toString and Exceptions
Step 04 - Java Arrays - Compare, Sort and Fill
Step 05 - Java Arrays - Exercise - Create Student Class - Part 1 - Total and Average Marks
Step 06 - Java Arrays - Exercise - Create Student Class - Part 2 - Maximum and Minimum Mark
Step 07 - Introduction to Variable Arguments - Need
Step 08 - Introduction to Variable Arguments - Basics
Step 09 - Introduction to Variable Arguments - Enhancing Student Class
Step 10 - Java Arrays - Using Person Objects and String Elements with Exercises
Step 11 - Java String Arrays - Exercise Solutions - Print Day of Week with the Most number of letters and more
Step 12 - Adding and Removing Marks - Problem with Arrays
Step 13 - First Look at ArrayList - An Introduction
Step 14 - First Look at ArrayList - Refactoring Student Class to use ArrayList
Step 15 - First Look at ArrayList - Enhancing Student Class with Add and Remove Marks
Step 16 - Introduction to Array and ArrayList - Conclusion

Object Oriented Programming Again

Step 00 - Object Oriented Programming - Level 2 - Section Introduction
Step 01 - Basics of Designing a Class - Class, Object, State and Behavior
Step 02 - OOPS Example - Fan Class - Deciding State and Constructors
Step 03 - OOPS Example - Fan Class - Deciding Behavior with Methods
Step 04 - OOPS Exercise - Rectangle Class
Step 05 - Understanding Object Composition with Customer Address Example
Step 06 - Understanding Object Composition - An Exercise - Books and Reviews
Step 07 - Understanding Inheritance - Why do we need it?
Step 08 - Object is at top of Inheritance Hierarchy
Step 09 - Inheritance and Overriding - with toString() method
Step 10 - Java Inheritance - Exercise - Student and Employee Classes
Step 11 - Java Inheritance - Default Constructors and super() method call
Step 12 - Java Inheritance - Puzzles - Multiple Inheritance, Reference Variables and instanceof
Step 13 - Java Abstract Class - Introduction
Step 14 - Java Abstract Class - First Example - Creating Recipes with Template Method
Step 15 - Java Abstract Class - Puzzles
Step 16 - Java Interface - Example 1 - Gaming Console - How to think about Intefaces?
Step 17 - Java Interface - Example 2 - Complex Algorithm - API defined by external team
Step 18 - Java Interface - Puzzles - Unimplemented methods, Abstract Classes, Variables, Default Methods and more
Step 19 - Java Interface vs Abstract Class - A Comparison
Step 20 - Java Interface Flyable and Abstract Class Animal - An Exercise
Step 21 - Polymorphism - An introduction

Collections

Step 01 - Java Collections - Section Overview with Need For Collections
Step 02 - List Interface - Introduction - Position is King
Step 03 - List Interface - Immutability and Introduction of Implementations - ArrayList, LinkedList and Vector
Step 04 - List Interface Implementations - ArrayList vs LinkedList
Step 05 - List Interface Implementations - ArrayList vs Vector
Step 06 - List Interface - Methods to add, remove and change elements and lists
Step 07 - List and ArrayList - Iterating around elements
Step 08 - List and ArrayList - Choosing iteration approach for printing and deleting elements
Step 09 - List and ArrayList - Puzzles - Type Safety and Removing Integers
Step 10 - List and ArrayList - Sorting - Introduction to Collections sort static method
Step 11 - List and ArrayList - Sorting - Implementing Comparable Interface in Student Class
Step 12 - List and ArrayList - Sorting - Providing Flexibility by implementing Comparator interface
Step 13 - List and ArrayList - A Summary
Step 14 - Set Interface - Introduction - No Duplication
Step 15 - Understanding Data Structures - Array, LinkedList and Hashing
Step 16 - Understanding Data Structures - Tree - Sorted Order
Step 17 - Set Interface - Hands-on - HashSet, LinkedHashSet, and TreeSet
Step 18 - Set Interface - Exercise - Find Unique Characters in a List
Step 19 - TreeSet - Methods from NavigableSet - floor,lower,upper, subSet, head and tailSet
Step 20 - Queue Interface - Process Elements in Order
Step 21 - Introduction to PriorityQueue - Basic Methods and Customized Priority
Step 22 - Map Interface - An Introduction - Key and Value
Step 23 - Map Interface - Implementations - HashMap, HashTable, LinkedHashMap and TreeMap
Step 24 - Map Interface - Basic Operations
Step 25 - Map Interface - Comparison - HashMap vs LinkedHashMap vs TreeMap
Step 26 - Map Interface - Exercise - Count occurrences of characters and words in a piece of text
Step 27 - TreeMap - Methods from NavigableMap - floorKey, higherKey, firstEntry, subMap and more
Step 28 - Java Collections - Conclusion with Three Tips

Generics

Step 01 - Introduction to Generics - Why do we need Generics?
Step 02 - Implementing Generics for the Custom List
Step 03 - Extending Custom List with a Generic Return Method
Step 04 - Generics Puzzles - Restrictions with extends and Generic Methods
Step 05 - Generics and WildCards - Upper Bound and Lower Bound

Introduction to Functional Programming

Step 01 - Introduction to Functional Programming - Functions are First-Class Citizens
Step 02 - Functional Programming - First Example with Function as Parameter
Step 03 - Functional Programming - Exercise - Loop a List of Numbers
Step 04 - Functional Programming - Filtering - Exercises to print odd and even numbers from List
Step 05 - Functional Programming - Collect - Sum of Numbers in a List
Step 06 - Functional Programming vs Structural Programming - A Quick Comparison
Step 07 - Functional Programming Terminology - Lambda Expression, Stream and Operations on a Stream
Step 08 - Stream Intermediate Operations - Sort, Distinct, Filter and Map
Step 09 - Stream Intermediate Operations - Exercises - Squares of First 10, Map String List to LowerCase and Length of String
Step 10 - Stream Terminal Operations - 1 - max operation with Comparator
Step 11 - Stream Terminal Operations - 2 - min, collect to List,
Step 12 - Optional class in Java - An Introduction
Step 13 - Behind the Screens with Functional Interfaces - Implement Predicate Interface
Step 14 - Behind the Screens with Functional Interfaces - Implement Consumer Interface
Step 15 - Behind the Screens with Functional Interfaces - Implement Function Interface for Mapping
Step 16 - Simplify Functional Programming code with Method References - static and instance methods
Step 17 - Functions are First-Class Citizens
Step 18 - Introduction to Functional Programming - Conclusion

Introduction to Threads And Concurrency

Step 01 - Introduction to Threads and MultiThreading - Need for Threads
Step 02 - Creating a Thread for Task1 - Extending Thread Class
Step 03 - Creating a Thread for Task2 - Implement Runnable Interface
Step 04 - Theory - States of a Thread
Step 05 - Placing Priority Requests for Threads
Step 06 - Communication between Threads - join method
Step 07 - Thread utility methods and synchronized keyword - sleep, yield
Step 08 - Need for Controlling the Execution of Threads
Step 09 - Introduction to Executor Service
Step 10 - Executor Service - Customizing number of Threads
Step 11 - Executor Service - Returning a Future from Thread using Callable
Step 12 - Executor Service - Waiting for completion of multiple tasks using invokeAll
Step 13 - Executor Service - Wait for only the fastest task using invokeAny
Step 14 - Threads and MultiThreading - Conclusion

Introduction to Exception Handling

Step 01 - Introduction to Exception Handling - Your Thought Process during Exception Handling
Step 02 - Basics of Exceptions - NullPointerException and StackTrace
Step 03 - Basics of Handling Exceptions - try and catch
Step 04 - Basics of Handling Exceptions - Exception Hierarchy, Matching and Catching Multiple Exceptions
Step 05 - Basics of Handling Exceptions - Need for finally
Step 06 - Basics of Handling Exceptions - Puzzles
Step 07 - Checked Exceptions vs Unchecked Exceptions - An Example
Step 08 - Hierarchy of Errors and Exceptions - Checked and Runtime
Step 09 - Throwing an Exception - Currencies Do Not Match Runtime Exception
Step 10 - Throwing a Checked Exception - Throws in method signature and handling
Step 11 - Throwing a Custom Exception - CurrenciesDoNotMatchException
Step 12 - Write less code with Try with Resources - New Feature in Java 7
Step 13 - Basics of Handling Exceptions - Puzzles 2
Step 14 - Exception Handling - Conclusion with Best Practices

Files and Directories

Step 01 - List files and folders in Directory with Files list method
Step 02 - Recursively List and Filter all files and folders in Directory with Step Files walk method and Search with find method
Step 03 - Read content from a File - Files readAllLines and lines methods
Step 04 - Writing Content to a File - Files write method
Step 05 - Files - Conclusion

More Concurrency with Concurrent Collections and Atomic Operations

Step 01 - Getting started with Synchronized
Step 02 - Problem with Synchronized - Less Concurrency
Step 03 - Enter Locks with ReEntrantLock
Step 04 - Introduction to Atomic Classes - AtomicInteger
Step 05 - Need for ConcurrentMap
Step 06 - Implementing an example with ConcurrentHashMap
Step 07 - ConcurrentHashMap uses different locks for diferrent regions
Step 08 - CopyOnWrite Concurrent Collections - When reads are more than writes
Step 09 - Conclusion

Java Tips

Java Tip 01 - Imports and Static Imports
Java Tip 02 - Blocks
Java Tip 03 - equals method
Java Tip 04 - hashcode method
Java Tip 05 - Class Access Modifiers - public and default
Java Tip 06 - Method Access Modifiers - public, protected, private and default
Java Tip 07 - Final classes and Final methods
Java Tip 08 - Final Variables and Final Arguments
Java Tip 09 - Why do we need static variables?
Java Tip 09 - Why do we need static methods?
Java Tip 10 - Static methods cannot use instance methods or variables
Java Tip 11 - public static final - Constants
Java Tip 12 - Nested Classes - Inner Class vs Static Nested Class
Java Tip 13 - Anonymous Classes
Java Tip 14 - Why Enum and Enum Basics - ordinal and values
Java Tip 15 - Enum - Constructor, variables and methods
Java Tip 16 - Quick look at inbuild Enums - Month, DayOfWeek


Start Learning Now. Hit the Enroll Button!



Screenshots

Java Programming for Complete Beginners
Java Programming for Complete Beginners
Java Programming for Complete Beginners
Java Programming for Complete Beginners

Content

Introduction to Course - Java Programming

Introduction to the Course - Java Programming

Git Repository URL

How To Make Best use of the Course Guide?

Installing Java

Step 00 : Learn Java Using JShell

Step 01 - Installing JDK - with installation guide PDF

Step 02 - Verifying Java and Jshell

Step 03 - Troubleshooting Java installation

Step 04 - Setting Path environment variable in Windows

Introduction to Java Programming with Jshell using Multiplication Table

Step 00 - Getting Started with Programming

Step 01 - Introduction to Multiplication Table challenge

Step 02 - Launch JShell

Step 03 - Break Down Multiplication Table Challenge

Step 04 - Java Expression - An Introduction

Step 05 - Java Expression - Exercises

Step 06 - Java Expression - Puzzles

Step 07 - Printing output to console with Java

Step 08 - Printing output to console with Java - Exercise Statements

Step 09 - Printing output to console with Java - Exercise Solutions

Step 10 - Printing output to console with Java - Puzzles

JShell Tip - Multiple Lines of Code

Step 11 - Advanced Printing output to console with Java

Step 12 - Advanced Printing output to console with Java - Exercises

Step 13 - Introduction to Variables in Java

Step 14 - Introduction to Variables in Java - Exercises and Puzzles

Step 15 - 4 Important Things to Know about Variables in Java

Step 16 - How are variables stored in memory?

Step 17 - How to name a variable?

Step 18 - Understanding Primitive Variable Types in Java

Step 19 - Understanding Primitive Variable Types in Java - Choosing a Type

Java Tip - String Concatenation

Step 20 - Java Assignment Operator

Step 21 - Java Assignment Operator - Puzzles on Increment, Decrement and Compoun

Step 22 - Programming Tips : JShell - Shortcuts, Multiple Lines and Variables

Step 23 - Java Conditionals and If Statement - Introduction

Step 24 - Java Conditionals and If Statement - Exercise Statements

Step 25 - Java Conditionals and If Statement - Exercise Solutions

Step 26 - Java Conditionals and If Statement - Puzzles

Step 27 - Java For Loop to Print Multiplication Table - Introduction

Step 28 - Java For Loop to Print Multiplication Table - Exercise Statements

Step 29 - Java For Loop to Print Multiplication Table - Exercise Solutions

Step 30 - Java For Loop to Print Multiplication Table - Puzzles

Step 31 - Getting Started with Programming - Revise all Terminology

Introduction to Java Method with Multiplication Table

Step 00 - Section 02 - Methods - An Introduction

Step 01 - Your First Java Method - Hello World Twice and Exercise Statements

Step 02 - Introduction to Java Methods - Exercises and Puzzles

Step 03 - Programming Tip - Editing Methods with JShell

Step 04 - Introduction to Java Methods - Arguments and Parameters

Step 05 - Introduction to Java Method Arguments - Exercises

Step 06 - Introduction to Java Method Arguments - Puzzles and Tips

Step 07 - Getting back to Multiplication Table - Creating a method

Step 08 - Print Multiplication Table with a Parameter and Method Overloading

Step 09 - Passing Multiple Parameters to a Java Method

Step 10 - Returning from a Java Method - An Introduction

Step 11 - Returning from a Java Method - Exercises

Step 12 - Methods - Section Review

Introduction to Java Platform

Step 00 - Section 03 - Overview Of Java Platform - Section Overview

Step 01 - Overview Of Java Platform - An Introduction - java, javac, bytecode an

Step 02 - Java Class and Object - First Look

Step 03 - Create a method in a Java class

Step 04 - Create and Compile Planet.java class

Step 05 - Run Planet calss with Java - Using a main method

Step 06 - Play and Learn with Planet Class

Step 07 - JDK vs JRE vs JVM

Introduction to Eclipse - First Java Programming Project

Step 00 - Installing Eclipse

Step 01 - Creating a New Java Project with Eclipse

Step 02 - Your first Java class with Eclipse

Step 03 - Writing Multiplication Table Java Program with Eclipse

Step 04 - Adding more methods for Multiplication Table Program

Eclipse Tip - Save Actions

Step 05 - Programming Tip 1 : Refactoring with Eclipse

Step 06 - Programming Tip 2 : Debugging with Eclipse

Step 07 - Programming Tip 3 : Eclipse vs JShell - How to choose?

Introduction To Java Object Oriented Programming

Step 00 - Introduction to Object Oriented Programming - Section Overview

Step 01 - Introduction to Object Oriented Programming - Basics

Step 02 - Introduction to Object Oriented Programming - Terminology - Class, Obj

Step 03 - Introduction to Object Oriented Programming - Exercise - Online Shoppi

Step 04 - Create Motor Bike Java Class and a couple of objects

Step 05 - Exercise Solutions - Book class and Three instances

Step 06 - Introducing State of an object with speed variable

Step 07 - Understanding basics of Encapsulation with Setter methods

Step 08 - Exercises and Tips - Getters and Generating Getters and Setters with E

Step 09 - Puzzles on this and initialization of member variables

Step 10 - First Advantage of Encapsulation

Step 11 - Introduction to Encapsulation - Level 2

Step 12 - Encapsulation Exercises - Better Validation and Book class

Step 13 - Introdcution to Abstraction

Step 14 - Introduction to Java Constructors

Step 15 - Introduction to Java Constructors - Exercises and Puzzles

Step 16 - Introduction to Object Oriented Programming - Conclusion

Primitive Data Types And Alternatives in Java Programming

Step 00 - Primitive Data Types in Depth - Section Overview

Step 01 - Basics about Java Integer Data Types - Casting, Operators and More

Step 02 - Java Integer Data Types - Puzzles - Octal, Hexadecimal, Post and Pre i

Step 03 - Java Integer Data Types - Exercises - BiNumber - add, multiply and dou

Step 04 - Java Floating Point Data Types - Casting , Conversion and Accuracy

Step 05 - Introduction to BigDecimal Java Class

Step 06 - BigDecimal Puzzles - Adding Integers

Step 07 - BigDecimal Exercises - Simple Interest Calculation

Step 08 - Java Boolean Data Type - Relational and Logical Operators

Step 09 - Java Boolean Data Type - Puzzles - Short Circuit Operators

Step 10 - Java Character Data Type char - Representation and Conversion

Step 11 - Java char Data Type - Exercises 1 - isVowel

Step 12 - Java char Data Type - Exercises 2 - isDigit

Step 13 - Java char Data Type - Exercises 3 - isConsonant, List Upper Case and L

Step 14 - Primitive Data Types in Depth - Conclusion

Conditionals in Java Programming

Step 00 - Conditionals with Java - Section Overview

Step 01 - Introduction to If Else Statement

Step 02 - Introduction to Nested If Else

Step 03 - If Else Statement - Puzzles

Step 04 - If Else Problem - How to get User Input in Java?

Step 05 - If Else Problem - How to get number 2 and choice from user?

Step 06 - If Else Problem - Implementing with Nested If Else

Programming Tip - CodingBat dot Com

Step 07 - Java Switch Statement - An introduction

Step 08 - Java Switch Statement - Puzzles - Default, Break and Fall Through

Step 09 - Java Switch Statement - Exercises - isWeekDay, nameOfMonth, nameOfDay

Eclipse Tip - Ctrl or Cmd + 1

Step 10 - Java Ternary Operation - An Introduction

Step 11 - Conditionals with Java - Conclusion

Loops in Java Programming

Step 00 - Java Loops - Section Introduction

Step 01 - Java For Loop - Syntax and Puzzles

Step 02 - Java For Loop - Exercises Overview and First Exercise Prime Numbers

Step 03 - Java For Loop - Exercise - Sum Upto N Numbers and Sum of Divisors

Step 04 - Java For Loop - Exercise - Print a Number Triangle

Eclipse Tip - Templates - sysout, main, fore, ifelse

Step 05 - While Loop in Java - An Introduction

Step 06 - While Loop - Exericises - Cubes and Squares upto limit

Step 07 - Do While Loop in Java - An Introduction

Step 08 - Do While Loop in Java - An Example - Cube while user enters positive n

Step 09 - Introduction to Break and Continue

Step 10 - Selecting Loop in Java - For vs While vs Do While

Reference Types in Java Programming

Step 00 - Java Reference Types - Section Introduction

Step 01 - Reference Types - How are they stored in Memory?

Step 02 - Java Reference Types - Puzzles

Step 03 - String class - Introduction and Exercise - Print each word and char on

Step 04 - String class - Exercise Solution and Some More Important Methods

Step 05 - Understanding String is Immutable and String Concat, Upper Case, Lower

Step 06 - String Concatenation and Join, Replace Methods

Step 07 - Java String Alternatives - StringBuffer and StringBuilder

Step 08 - Java Wrapper Classes - An Introduction - Why and What?

Step 09 - Java Wrapper Classes - Creation - Constructor and valueOf

Step 10 - Java Wrapper Classes - Auto Boxing and a Few Wrapper Constants - SIZE,

Step 11 - Java Dates - Introduction to LocalDate, LocalTime and LocalDateTime

Step 12 - Java Dates - Exploring LocalDate - Creation and Methods to play with D

Step 13 - Java Dates - Exploring LocalDate - Comparing Dates and Creating Specif

Eclipse Tip - Exploring Java API

Step 14 - Java Reference Types - Conclusion

Arrays and ArrayLists in Java Programming

Step 00 - Introduction to Array and ArrayList - Section Introduction with a Chal

Step 01 - Understanding the need and Basics about an Array

Step 02 - Java Arrays - Creating and Accessing Values - Introduction

Step 03 - Java Arrays - Puzzles - Arrays of Objects, Primitive Data Types, toStr

Step 04 - Java Arrays - Compare, Sort and Fill

Step 05 - Java Arrays - Exercise - Create Student Class - Part 1 - Total and Ave

Step 06 - Java Arrays - Exercise - Create Student Class - Part 2 - Maximum and M

Step 07 - Introduction to Variable Arguments - Need

Step 08 - Introduction to Variable Arguments - Basics

Step 09 - Introduction to Variable Arguments - Enhancing Student Class

Step 10 - Java Arrays - Using Person Objects and String Elements with Exercises

Eclipse Tip - Code Generation

Step 11 - Java String Arrays - Exercise Solutions - Print Day of Week with Most

Step 12 - Adding and Removing Marks - Problem with Arrays

Step 13 - First Look at ArrayList - An Introduction

Step 14 - First Look at ArrayList - Refactoring Student Class to use ArrayList

Step 15 - First Look at ArrayList - Enhancing Student Class with Add and Remove

Step 16 - Introduction to Array and ArrayList - Conclusion

Java - Oriented Programming Again

Step 00 - Object Oriented Programming - Level 2 - Section Introduction

Step 01 - Basics of Designing a Class - Class, Object, State and Behavior

Step 02 - OOPS Example - Fan Class - Deciding State and Constructors

Step 03 - OOPS Example - Fan Class - Deciding Behavior with Methods

Step 04 - OOPS Exercise - Rectangle Class

Step 05 - Understanding Object Composition with Customer Address Example

Step 06 - Understanding Object Composition - An Exercise - Books and Reviews

Step 07 - Understanding Inheritance - Why do we need it?

Step 08 - Object is at top of Inheritance Hierarchy

Step 09 - Inheritance and Overriding - with toString() method

Step 10 - Java Inheritance - Exercise - Student and Employee Classes

Step 11 - Java Inheritance - Default Constructors and super() method call

Step 12 - Java Inheritance - Puzzles - Multiple Inheritance, Reference Variables

Step 13 - Java Abstract Class - Introduction

Step 14 - Java Abstract Class - First Example - Creating Recipes with Template M

Step 15 - Java Abstract Class - Puzzles

Step 16 - Java Interface - Example 1 - Gaming Console - How to think about Intef

Step 17 - Java Interface - Example 2 - Complex Algorithm - API defined by extern

Step 18 - Java Interface - Puzzles - Unimplemented methods, Abstract Classes, Va

Step 19 - Java Interface vs Abstract Class - A Comparison

Step 20 - Java Interface Flyable and Abstract Class Animal - An Exercise

Programming Tip - 97 Things every programming should know

Step 21 - Polymorphism - An introduction

Collections in Java Programming

Step 01 - Java Collections - Section Overview with Need For Collections

Step 02 - List Interface - Introduction - Position is King

Step 03 - List Inteface - Immutability and Introduction of Implementations - Arr

Step 04 - List Inteface Implementations - ArrayList vs LinkedList

Programming Tip - Teach Yourselves programming in 10 Years

Step 05 - List Inteface Implementations - ArrayList vs Vector

Step 06 - List Inteface - Methods to add, remove and change elements and lists

Step 07 - List and ArrayList - Iterating around elements

Step 08 - List and ArrayList - Choosing iteration approach for printing and dele

Step 09 - List and ArrayList - Puzzles - Type Safety and Removing Integers

Step 10 - List and ArrayList - Sorting - Introduction to Collections sort static

Step 11 - List and ArrayList - Sorting - Implementing Comparable Inteface in Stu

Step 12 - List and ArrayList - Sorting - Providing Flexibility by implementing C

Step 13 - List and ArrayList - A Summary

Step 14 - Set Interface - Introduction - No Duplication

Step 15 - Understanding Data Structures - Array, LinkedList and Hashing

Step 16 - Understanding Data Structures - Tree - Sorted Order

Step 17 - Set Interface - Hands on - HashSet, LinkedHashSet and TreeSet

Step 18 - Set Interface - Exercise - Find Unique Characters in a List

Step 19 - TreeSet - Methods from NavigableSet - floor,lower,upper, subSet, head

Step 20 - Queue Interface - Process Elements in Order

Step 21 - Introduction to PriorityQueue - Basic Methods and Customized Priority

Step 22 - Map Interface - An Introduction - Key and Value

Step 23 - Map Interface - Implementations - HashMap, HashTable, LinkedHashMap an

Step 24 - Map Interface - Basic Operations

Step 25 - Map Interface - Comparison - HashMap vs LinkedHashMap vs TreeMap

Step 26 - Map Interface - Exercise - Count occurances of characters and words in

Step 27 - TreeMap - Methods from NavigableMap - floorKey, higherKey, firstEntry,

Step 28 - Java Collections - Conclusion with Three Tips

Generics in Java Programming

Step 01 - Introduction to Generics - Why do we need Generics?

Step 02 - Implementing Generics for the Custom List

Step 03 - Extending Custom List with a Generic Return Method

Step 04 - Generics Puzzles - Restrictions with extends and Generic Methods

Step 05 - Generics and WildCards - Upper Bound and Lower Bound

Introduction to Functional Programming in Java

Step 01 - Introduction to Functional Programming - Functions are First Class Cit

Step 02 - Functional Programming - First Example with Function as Parameter

Step 03 - Functional Programming - Exercise - Loop a List of Numbers

Step 04 - Functional Programming - Filtering - Exercises to print odd and even n

Step 05 - Functional Programming - Collect - Sum of Numbers in a List

Step 06 - Functional Programming vs Structural Programming - A Quick Comparison

Step 07 - Functional Programming Terminology - Lambda Expression, Stream and Ope

Step 08 - Stream Intermediate Operations - Sort, Distinct, Filter and Map

Step 09 - Stream Intermediate Operations - Exercises - Squares of First 10, Map

Step 10 - Stream Terminal Operations - 1 - max operation with Comparator

Step 11 - Stream Terminal Operations - 2 - min, collect to List,

Step 12 - Optional class in Java - An Introduction

Step 13 - Behind the Screens with Functional Interfaces - Implement Predicate In

Step 14 - Behind the Screens with Functional Interfaces - Implement Consumer Int

Step 15 - Behind the Screens with Functional Interfaces - Implement Function Int

Step 16 - Simplify Functional Programming code with Method References - static a

Step 17 - Functions are First Class Citizens

Step 18 - Introduction to Functional Programming - Conclusion

Introduction to Threads And Concurrency in Java

Step 01 - Introduction to Threads and MultiThreading - Need for Threads

Step 02 - Creating a Thread for Task1 - Extending Thread Class

Step 03 - Creating a Thread for Task2 - Implement Runnable Interface

Step 04 - Theory - States of a Thread

Step 05 - Placing Priority Requests for Threads

Step 06 - Communication between Threads - join method

Step 07 - Thread utility methods and synchronized keyword - sleep, yield

Step 08 - Need for Controlling the Execution of Threads

Step 09 - Introduction to Executor Service

Step 10 - Executor Service - Customizing number of Threads

Step 11 - Executor Service - Returning a Future from Thread using Callable

Step 12 - Executor Service - Waiting for completion of multiple tasks using invo

Step 13 - Executor Service - Wait for only the fastest task using invokeAny

Step 14 - Threads and MultiThreading - Conclusion

Introduction to Exception Handling in Java

Step 01 - Introduction to Exception Handling - Your Thought Process during Excep

Step 02 - Basics of Exceptions - NullPointerException and StackTrace

Step 03 - Basics of Handling Exceptions - try and catch

Step 04 - Basics of Handling Exceptions - Exception Hierarchy, Matching and Catc

Step 05 - Basics of Handling Exceptions - Need for finally

Step 06 - Basics of Handling Exceptions - Puzzles

Step 07 - Checked Exceptions vs Unchecked Exceptions - An Example

Step 08 - Hierarchy of Errors and Exceptions - Checked and Runtime

Step 09 - Throwing an Exception - Currencies Do Not Match Runtime Exception

Step 10 - Throwing a Checked Exception - Throws in method signature and handling

Step 11 - Throwing a Custom Exception - CurrenciesDoNotMatchException

Step 12 - Write less code with Try with Resources - New Feature in Java 7

Step 13 - Basics of Handling Exceptions - Puzzles 2

Step 14 - Exception Handling - Conclusion with Best Practices

Files and Directories in Java

Step 01 - List files and folders in Directory with Files list method

Step 02 - Recursively List and Filter all files and folders in Directory with St

Step 03 - Read content from a File - Files readAllLines and lines methods

Step 04 - Writing Content to a File - Files write method

Step 05 - Files - Conclusion

More Concurrency with Concurrent Collections and Atomic Operations

Step 01 - Getting started with Synchronized

Step 02 - Problem with Synchronized - Less Concurrency

Step 03 - Enter Locks with ReEntrantLock

Step 04 - Introduction to Atomic Classes - AtomicInteger

Step 05 - Need for ConcurrentMap

Step 06 - Implementing an example with ConcurrentHashMap

Step 07 - ConcurrentHashMap uses different locks for diferrent regions

Step 08 - CopyOnWrite Concurrent Collections - When reads are more than writes

Step 09 - Conclusion

Java Tips

Java Tip 01 - Imports and Static Imports

Java Tip 02 - Blocks

Java Tip 03 - equals method

Java Tip 04 - hashcode method

Java Tip 05 - Class Access Modifiers - public and default

Java Tip 06 - Method Access Modifiers - public, protected, private and default

Java Tip 07 - Final classes and Final methods

Java Tip 08 - Final Variables and Final Arguments

Java Tip 09 Why do we need static variables?

Java Tip 09 - Why do we need static methods?

Java Tip 10 - Static methods cannot use instance methods or variables

Java Tip 11 - public static final - Constants

Java Tip 12 - Nested Classes - Inner Class vs Static Nested Class

Java Tip 13 - Anonymous Classes

Java Tip 14 - Why Enum and Enum Basics - ordinal and values

Java Tip 15 - Enum - Constructor, variables and methods

Java Tip 16 - Quick look at inbuild Enums - Month, DayOfWeek

Congratulations

Bonus Lecture

Congratulations



Reviews

A
AFIF4 October 2020

Its really really helpful that I can not explain. I am a computer science student, I am using this course for my back support.

A
Anish3 October 2020

before this I didn't even know J of java ut after watching this lecture i am feeling a bit confident about this and I think I am going to learn more on this ....thank you so much udemy and this lecturer

M
Michelle2 October 2020

OMG. I'm taking a college course on Java. I have been SO overwhelmed and confused in my college course. This course has done more for me in 5 minutes than my college course has done for me all semester. I'm questioning why I'm paying the money I am for the college course when this course is so much better. This course has given me the context and big picture that I needed so my understanding no longer resembles a bunch of scattered puzzle pieces.

A
Aashi26 September 2020

It was a wonderful course that enhanced by programming skills. The best course offered by in28minutes. Thankyou Ranga Sir

R
Rahul23 September 2020

As a beginner, I really gained confidence and the course helped me to start my journey to reskill as a Java Full Stack programmer. But, I feel that the complex topics like Array List, Classes, Collections, Generics, Functional programming, Threads & concurrency, exception handling all could have been a little bit more interactive. After the basics, if we could have shifted to a programming project based experience where each topic was introduced it would have been more fruitful.

I
Isabella23 February 2020

The explanations are so detailed and the constant repetition of new concepts makes it easy to remember.

N
Nandini15 February 2020

Just a well presented video step by step; although I knew most of the setup, recaping with this fabulous video helped.

J
Jose12 February 2020

Mi unico inconveniente es que es subtítulo que aparece en la web si lo veo en español, pero desde mi movil solo esta en ingles.

S
Sandesh12 February 2020

Thats looks really awesome, just started with course. Lets see how it goes. But till now, its all well explained.

S
Shiva4 February 2020

it is really good for a beginners. i would recommend to show more examples to make the programmers have much more practice and fluency on particular concept. but the journey as complete beginner was totally good. thank you and keep up your work to help lot other like me.

J
Jeya29 January 2020

yes.. this course helps me to refresh my knowledge on java which i learnt 15 years before and helps me understand in a better way.. thank you..

S
Stefan28 January 2020

So far at 172 I think the content and the presentations are good, whenever I finish this course I'm thinking to buy more from the author.

D
David27 January 2020

Really Enjoying the course, I think this is a great course, it is great for beginners and for more experienced programmers. It has helped me to improve on my knowledge and has shown me new things that my schooling has not.

G
George26 January 2020

I don't think its a good match for me since it doesn't have the same priorities as my university course.

L
Lawrence26 January 2020

Awesome, and amazing; on the same pedestal with some of the best online classes of introduction to Java.



1535678

Udemy ID

2/1/2018

Course created date

7/18/2019

Course Indexed date
Bot
Course Submitted by

Twitter
Telegram
Android PlayStore
Apple Appstore