Introduction
What kind of software can you create?
()
What you need to know
()
1. What Is Java?
Explore the history of Java
()
Principles and components of Java
()
Explore basic Java syntax
()
Memory management and garbage collection
()
Choose a development environment
()
2. Get Started with Java
Install the JDK on Windows
()
Install the JDK on macOS
()
Install and configure IntelliJ IDEA
()
Test simple Java code in JShell
()
Compile Java code to bytecode
()
Pass arguments to a console application
()
Use the Java API documentation
()
3. Declare and Manage Variables
Work with primitive variables
()
Declare and modify primitive values
()
Declare and initialize object variables
()
Manage currency values with BigDecimal
()
Convert values between numeric types
()
Math operators and the Math class
()
Manage true and false Boolean values
()
Manage character values as primitives
()
More about Java operators
()
4. Manage String Values
Declare and initialize string values
()
Build a string from multiple values
()
Clone the exercise files from GitHub
()
Convert primitive values to strings
()
Format numeric values as strings
()
Interpolate strings with placeholders
()
Compare string values
()
Parse string values
()
Get string values from user input
()
Challenge: A simple calculator
()
Solution: A simple calculator
()
5. Manage Program Flow
Evaluate conditions with if-else
()
Evaluate conditions with switch-case
()
Create looping code blocks
()
Create reusable code with methods
()
Create overloaded methods
()
Pass arguments by reference vs. value
()
6. Debugging and Exception Handling
Debug with IntelliJ IDEA
()
Handle exceptions with try/catch
()
Create multiple catch blocks
()
Close objects with try-with-resources
()
Challenge: A more complex calculator
()
Solution: A more complex calculator
()
7. Create Custom Classes
Declare and use custom classes
()
Organize code with packages
()
Create instance fields and methods
()
Declare multiple constructor methods
()
Use static fields as constants
()
Declare and use Enum types
()
8. Work with Inheritance
About inheritance
()
Extend classes and override methods
()
Use objects as their super types
()
9. Manage Data Collections
Store values in simple arrays
()
Manage resizable arrays with Lists
()
Manage key-value pairs with Maps
()