Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Java Master Class
Course Intro
1 - Intro
2 - Practice Practice Practice
3 - Textbook
4 - Discord
5 - Newsletter
Introduction to Java
1 - What is Java
2 - What can you build with Java
3 - Java Usages
4 - Compliled vs Interpreted Languages
5 - Static vs Dynamic Type Checking
6 - Java version history
Environment Setup
1 - IntelliJ IDEA
2 - jetbrains.com/idea
3 - Jetbrains ToolBox
4 - Quick Word Before We Begin
Your Gift
1 - The Gift
2 - 6 Months bonus IntelliJ Ultimate
Getting Started
1 - Create Project
2 - Your First Java Program
3 - Compiling and Running via Terminal
4 - Fixing Compilation Errors
5 - View ByteCode
6 - Public Static Void Main
7 - Understanding Java Code
8 - SOUT Keyboard Shortcut
The Basics
1 - Reserved Keywords
2 - Comments
3 - Variables
4 - Primitives Data Types Difference
5 - Numeric Literals with Underscore
6 - Arithmetic Operators
7 - Increment and Decrement Operators
8 - Comparison Operators
9 - Short hand re-assignment
10 - Naming Variables
11 - Strings
12 - String API Documentation
13 - Reference Types and Objects
14 - Reference Types and Objects Diferences
15 - Pass py value with Primitives
16 - Pass py value with Reference Types
17 - Arrays
18 - 0 and Null Values for Arrays
19 - Quick word on Arrays
Exercises
1 - TextBook and Exercises
2 - How To Attempt Exercises
3 - Exercises for Previous Sections
4 - Quick word on the CLI Project
Loops
1 - For Loop
2 - Loops and Arrays
3 - Enhanced For Loop
4 - For i vs Enhanced For Loop
5 - While Loop
6 - Do While
Exercise
'If' Statements
1 - If Statements
2 - If Statements with Conditions
3 - Else If
4 - AND Logical Operators
5 - OR Logical Operators
6 - Logical Operators Recap
7 - ! on ifs
8 - Dont do this with if statements
9 - Switch Statement
10 - Data Types for Enums
11 - New Switch Expression
Exercise
Packages
1 - Packages
2 - Creating Packages
3 - Exploring Packages
4 - Import keyword
5 - Optmizing imports
6 - Import with fully qualified name
7 - No Import for java lang
Access Modifiers
1 - Access Modifiers Intro
2 - Public Access Modifier
3 - Private
4 - Default
5 - Recap
6 - When To Use Each Access Modifier
7 - Static Keyword
Exercise
Methods
1 - Methods
2 - Method that add 2 numbers
3 - Parameters and Arguments
4 - Void methods
5 - Naming Convention
6 - Exercise
7 - Exercise Solution
8 - Textbook Exercises
Beyond The Basics
1 - Understanding public static void main
2 - Program Arguments
3 - Type Inference with Var
4 - Break Keyword and Loops
5 - Continue
6 - Return Keyword and Void Methods
7 - Final Keyword
8 - Enums
9 - Enums Methods
10 - Implicit and Explicit Type Casting
11 - Global and Local Variables
12 - Wrapper Classes
Exercise
Strings
1 - Working With Strings
2 - How Strings are stored in memory
3 - Strings are Immutable
4 - String Literal vs String Object
5 - Comparing Strings with ==
6 - Comparing Strings with .equals
7 - Useful String static Methods
Dates
1 - LocalDateTime
2 - LocalDate and LocalTime
3 - Creating Specif Dates
4 - ZoneIds
5 - Other Date Classes
Exercise
Big Decimal
1 - The Problem With double
2 - BigDecimal
3 - Exploring BigDecimal Methods
Taking User Input
1 - Scanner
2 - NextInt and other data types
3 - Outro
Exercise
Exception Handling
1 - Intro
2 - What is an exception
3 - Try Catch
4 - Multiple Catch Blocks
5 - Using Or Within Catch
6 - The Exception Class
7 - Finally Keyword
8 - Exception Hierarchy
9 - Uncheck Exceptions
10 - Checked Exceptions
11 - Throw and Throws
12 - Throwing Exceptions
13 - When To Use Checked VS Unchecked Exeptions
14 - Creating Custom Exceptions
Exercise
Working with Files
1 - Creating Files
2 - Writing To Files
3 - Reading from Files
4 - Try with Resources
Exercise
Classes and Objects
1 - Intro
2 - Your first class
3 - Setters
4 - Getters
5 - Constructors
6 - Default Constructors
7 - Multiple Contructors
8 - ToString
8 - The Inside Constructors
9 - The This Keyword
10 - Everything in Java is an Object
11 - @Override
12 - Comparing Objects with ==
13 - Comparing Obects with .equals
14 - Generating Equals method
15 - Equals Explained
16 - Generating Code
17 - Person and Cats Example
18 - POJOS
19 - Java Bean
20 - Exercise
21 - Exercise Solution
22 - Texbook Exercises
Static Keyword
1 - Static Keyword
2 - When to use Static
3 - Static Initlaization Block
4 - Instance Block Initializer
5 - Static Import
Organizing Code
1 - Intro
2 - Packages
3 - Models
4 - Service Classes
5 - Data Access Object
6 - Connecting DAO and Service
7 - N Tier Architecture
8 - Utitlity Classes
9 - Extra resources
CLI Project
1 - Intro
2 - The first CLI project task
3 - Demo
OOP
Upcoming Section Intro
OOP Encapsulation
1 - Encapsulation
2 - Encapsulation in Action
3 - The Problem With Non Private Fields
4 - Data Hiding
5 - String Class Encapsulation Example
OOP Inheritance
1 - What is Inheritance
2 - Implementing Inheritance
3 - Create an instance of Programmer
4 - Super Keyword
5 - Protected Access Modifier
6 - Override
7 - Single and Multi Level Inheritance
OOP - Abstraction
1 - Abstract Keyword on Classes
2 - Abstract Methods
3 - A Quick Word Before we move on
4 - Abstract Classes Example
OOP - Interfaces
1 - What is Polymorphism
2 - Car Bicycle Electric Scooter Example
3 - Create Your First Interface
4 - Implementing Interfaces
5 - Putting it all together
7 - Constants
8 - Default Methods
9 - CLI Project Exercise
Dependency Injection
1 - Don't Do This
2 - Dependecy Injection
3 - Dependency Injection In Action
4 - Singletons and @Inject_@Autowire
5 - CLI Project Exercise
SOLID Principles
2 - SOLID Principles
3 - Single Responsibitiy
4 - Open Close
5 - Liskov
6 - Interface Segragation
7 - Dependecy Inversion
Optionals
1 - Null Pointer Exception
2 - The Wrong Way Of Dealing with Null
3 - Optionals
Data Structures
1 - Intro
2 - Overview
3 - Arrays
4 - Working With Arrays
5 - 2D Arrays
6 - Working with 2D Arrays
7 - Lists
8 - Working With Lists and ArrayList
9 - Stack
10 - Working With Stacks
11 - Queue
12 - Working With Queues
13 - Linked List
14 - Working with LinkedList
15 - Sets
16 - Working with Sets
17 - Map Interface Hierarchy
18 - Maps
19 - Working With Maps
20 - HashCode
21 - Working HashCode and HashFunction
22 - Outro
23 - HackerRank Big Notation
24 - Algorithms, Big O and Time/Space Complexity - Extra reading
25 - Textbook Exercise
26 - CLI Project Exercise
Generics
1 - Intro
2 - Class Cast Exception
3 - ClassCastException Example 2
4 - Type Parameter and Type Argument
5 - Generic Type Naming Convention
6 - Generic and Classes
7 - Generic and Classes Part 2
8 - Generics and Methods
9 - Bounded Type Parameters
10 - Multiple Bounds
11 - Unbounded Wildcard
12 - Upper Bounded Wildcards
13 - Lower Bounded Wildcards
14 - Difference Between Bounded Type Parameters and Wildcards
15 - Type Erasure
16 - Outro
Streams
1 - Intro
2 - Java Streams
3 - How Streams Work
4 - Getting Started With Streams
5 - Exercise
6 - Declarative Solution
7 - Imperative Solution
8 - Visualise Streams
9 - Outro
10 - Textbook Exercise
11 - CLI Exercise
Maven
1 - Maven
2 - Installing Maven
3 - Verifying Maven Installation
4 - Creating a Maven Project
5 - Maven Folder Structure
6 - Project Object Model (pom.xml)
7 - Target Folder
8 - Installing Maven Dependencies
9 - Using Java Faker
10 - .m2 Folder
11 - Maven Lifecycles
12 - Running Maven Commands
13 - Packaging and Jar Files
14 - CLI Project Exercise
Testing
1 - Intro
2 - JUnit
3 - Installing JUNIT
4 - Launching Your First Test
5 - Calculator and CalculatorTest Classes
6 - Writing Your First Unit Test
7 - Assertions
8 - Test Scenarios
9 - Other JUnit Features
10 - Textbook Exercise
11 - CLI Exercise
Spring Boot
1 - Section Intro
2 - Intro Spring Boot
2 - Spring Initializr
3 - Open the project with IntelliJ
4 - The pom.xml
5 - Cleanup Few Things
6 - Textbook
Spring Boot - Getting Started
1 - JDK
2 - Your first Spring Boot Application
3 - Embedded Web Server
4 - Configuring Embedded Web Server
5 - Your first API
6 - @SpringBootApplication
7 - Spring Web MVC
8 - JSON For Java
9 - Java Objects to JSON Objects
Spring Boot - HTTP & APIs
1 - Introduction to HTTP
2 - The Evolution of HTTP
3 - HTTP Request and Response Messages
4 - HTTP Methods
5 - HTTP Status Codes
6 - URL
7 - API and REST API
8 - Public APIs and Other Types
9 - Why build APIs
Spring Boot - Developer Tools
1 - Chrome Developer Tools
2 - Exploring XHR for our API
3 - Inspecting Instagram Network Activity
4 - REST Client & Postman
5 - IntelliJ REST Clients
Spring Boot - CRUD - Read
1 - CRUD and Section Overview
2 - Customer Model
3 - Fake Database
4 - API Endpoint
5 - @PathVariable
Spring Boot - Structure the Backend
1 - N Tier Architecture
2 - Refactor - Controller Service and DAO
3 - @RestController @Service @Repository @Component
Spring Boot - Application context and beans
1 - Application Context
2 - Inspecting beans
3 - Bean Scopes
4 - Creating Beans
Spring Boot - Error Handling
1 - We are not handling error the right way
2 - Custom Exception
3 - @ResponseStatus
4 - Include error Message to Responses
Spring Boot - Database
1 - Section Intro
2 - Postgres and Docker
3 - Verifying Docker Installation
4 - Postgres DB with Docker compose
5 - Connecting to Database
6 - Connecting to DB using IntelliJ IDEA
7 - Data Source & JPA
8 - Installing PostgreSQL Driver and Spring Data JPA Dependencies
9 - Configuring Datasource Properties
10 - Create Customer Table
Spring Boot - Spring Data JPA
1 - Entity
2 - Inspecting The Database
3 - Column Contraints
4 - CustomerRepository
5 - CustomerJPADataAccessService class
6 - @Qualifier
7 - Saving Entities
8 - Exploring JPA Methods
Spring Boot - Get Customer By Id Exercise
1 - The Problem
2 - Exercise Solution
Spring Boot - CRUD, Create
1 - Intro
2 - Chasing Interface
3 - Override insert customer
4 - Business Logic for Adding new Customer
5 - Controller @RequestMapping and @RequestBody
6 - Testing POST Request
Spring Boot - CRUD, Delete (Exercise)
1 - Exercise
2 - Exercise Solution
Spring Boot - CRUD, Update (Exercise)
1 - Exercise
2 - Exercise Solution
Spring Boot - Exercise
Exercise
Next Steps
Full Stack Professional
7 - No Import for java lang
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock