Mastering Core Java with Best Practices
A one-of-a-kind course that teaches you Core Java along with best practices used in the industry. Perfect for absolute beginners.
Promo video explaining the motivation behind creating this course and what it offers. Must watch.
This course follows a unique, industry-vetted curriculum to help you set a solid foundation in Java. The uniqueness of the course is that apart from teaching core Java language features at an in-depth level, it also teaches many best practices followed in the industry. These best practices are crucial for building good software and is followed by all great teams. Moreover, course includes a solid instructor-led project with Eclipse as IDE, which will give you good a feel for how professional code is written. Most courses only teach core language features without any emphasis on best practices. Neither do they include a good instructor-led project. Due to this, students often end up facing challenges when working on real projects. So, this course has addressed this problem and over 75k students from 160+ countries have already benefited from the lectures. Do check out course promo video along with course curriculum to better understand what the course offers.
The course can take around 2 months full-time and is self-paced. Only requirement is you need to invest your time well and do it systematically.
You can also optionally earn our Core Java Engineer! certification - our endorsement that you've mastered Core Java. To receive this certificate, apart from completing the lectures & quizzes, you would have to complete the below programming assessments all verified by our engineers.
This lecture conceptually explains basic concepts like Class & Object through nice illustrations.
Class & ObjectsIntroduces Switch statement. Explains how it is more readable, concise and efficient compared to if-statement.
Switch Statement: IntroductionThis lecture demonstrates how a thread is launched and also put to sleep.
Launching a Thread!Chapter Introduction
What is Java & Who is Using It?
Story behind Java's Creation ~ A Brief History
Compilation
Platform Dependency
Interpreter
Platform Independence in Java
Java Virtual Machine (JVM)
An Overview of Java SE
Java SE Release Cycles & Release History
Installing Java 17 on Windows
Installing Java on Mac
Installing Java on Linux
Setting Classpath Environment Variable
Writing First Java Program
Conclusion ~ Chapter 1
Chapter 2 Quiz
Important Q&A Discussions! (+)
Chapter Introduction
Class & Objects
FREE PREVIEWAbsolute Java Basics
FREE PREVIEWVariables: Introduction
Declaring & Re-initializing Variables
Assignment: Currency Converter - Creating a Class with Variables
Variables: Primitive Types
Primitive Variables: Integers
Question on Binary Representation of Negative Number
Other Integer Literal Formats
Use byte & short Variables Judiciously (+)
Primitive Variables: Floating-point Numbers
Floating-point Pitfalls*
Primitive Variables: Character Data Type
Alternate ways to initialize char variables
Primitive Variables: Boolean Data Type
Quiz: Primitive Variables
Variable Kinds - Instance, Static, and Local Variables
Multi-variable Declaration Statements
Variables: Type Casting
Variables: Object References
Statements
Arrays
Assignment: Currency Converter - Array Creation & Accessing its Elements
2D Arrays
3D Arrays
Methods: Introduction
Method Types ~ Instance & Static Methods + Demo
Summary on Accessibility of Members from Static & Instance Methods
Assignment: Currency Converter - Invoking Methods of an Object
How Data is Passed to Methods in Java?
Method Overloading
Methods: varargs
Brief Summary on varargs Parameter
Constructors
Constructor Overloading
Constructor Overloading ~ Alternate way of delegating
Minor Note on Method Invocation & Implicit Narrowing Conversion
this Reference
Demo: Reinitializing Object References ~ More Brainstorming! (Incl. Assignment)
Minor Note on Executing StudentTest and a Java 11 Feature
Coding Exercise 1: Implementing Instructor Class ~ Manipulating Arrays with Object References
Review of Exercise 1 Solution with Best Practices
Conclusion
Chapter 3 Quiz
Important Q&A Discussions! (+)
Chapter Introduction
Operators
Arithmetic Operators
Arithmetic Operation Rules
Quiz: Arithmetic Operators
Note on Student Class
Comparison Operators
Logical Operators with Operator Precedence
Car Price Estimator ~ Coding Exercise for Comparison & Logical Operators
Coding Exercise 2: Car Price Estimator ~ Putting Comparison & Logical Operators into Action
Car Price Estimator - Exercise Solution Review
Bitwise Operators
Quick Note on Bitwise Operators with Boolean Operands
Bit Shift Operators
Quiz: Bitwise & Bit Shift Operators
Control-flow: if-statement
Switch Statement: Introduction
Switch Restrictions
Arrow Labels in Switch (Java 14)
Switch Expressions (Java 14)
Quiz: switch Statement
Control-flow: Ternary
Additional Notes on Ternary Operator
Control-flow: for Statement
More for Statement ...
Another Look at Nested for Statement
for-each Statement*
Variable Scope
Exercise
Coding Exercise 3: Computing GPA ~ Putting Operators & Control-flow to Test
Computing GPA - Exercise Solution Review
Demo: while Statement
Demo: do Statement (incl. Scanner Class for taking Input)
Control-flow: break Statement
Control-flow: continue
Recursion
Minor Correction in Binary Search Code
Conclusion
Chapter Introduction
Java API*
Accessing Packages
Creating Packages & Classpath Management
Naming Packages
Access Levels
More on private Modifier
Chapter 5 Quiz: Packages & Access Levels
Introduction
Installing Eclipse
Writing a Java Program in Eclipse
Eclipse Build Process
Importing Demo Code
Source Code Navigation
Automatic Source Code Cleaning & Generation
Shortcuts Cheat Sheet
Dheeru Mundluru is the instructor for this program. A passionate software engineer & educator, Dheeru has around 15 years of experience developing innovative software for start-ups in Silicon Valley and elsewhere. He holds a Ph.D. in Computer Science from University of Louisiana at Lafayette (USA). He is an experienced online instructor with over half-a-dozen years of teaching experience with over 100k students globally. He has also been rated as one of the top instructors on Udemy. His engineering expertise includes developing complex Web data integration & mining software with Java as the main programming tool. Coming from start-up world, he also has extensive end-to-end experience in developing Web applications using technologies such as Spring, Hibernate, MySQL, and Solr.
Writing well-crafted code that follows the best design practices is of utmost importance to him. He brings the same level of passion and completeness to his teaching.