Link
Java Boot Camp
Menu
Primer
Java
Setup environment (SDKMAN)
Gradle and Maven
IDE (IntelliJ IDEA)
Create a project using Gradle
Hello world application (from source to executable application)
Extend your application capabilities (using third-party libraries)
Making applications portable (containerisation using docker)
Java Light
JShell
Java single file execution
Introduction to classes and methods
Using existing functionality
Introduction to variables and types
Introduction to collections (arrays, lists, sets and maps)
Introduction to control-flow (if/else, switch, for, while and do/while loops)
Annotations
Enums
Exceptions
Testing (JUnit 5)
Classed within classes
Introduction to concurrency
Data Types
Basic types (variables and scope)
Strings
Primitive types
Reference types (the rest)
Stack and Heap
Operators
Mutable and immutable
Casting
Autoboxing
Enumerations
Packages, imports and static imports
Date Time API
Internationalization
Control flow
If/Else
Others
Switch
Classes and methods
Classes, methods and fields
Testing static methods
Access control
Simple objects
Example
The this keyword
Constructors
Mutable and immutable
Inheritance
Abstraction
The object class
Interfaces
The interfaces
Sorting
Lambda functions
Pending...
Generics
Raw Types
Basics
Methods
Classes
Variance
Type Erasure
Advanced Objects
The instanceof and type cast operators
Inheritance and composition
Overriding, overloading and hiding
Initialisation blocks
Top-level, inner and anonymous classes
Annotations
Records
Collections
Arrays
Lists
Sets
Maps
Bags
Covariance and invariance
The
hashCode()
and
equals()
methods
Queue, Priority Queue and Stack
Concurrent Collections
Java Collections Framework
Miscellaneous
Streams
Introduction to Streams
Sources
Testing
JUnit 5
Matchers (JUnit 5, Hamcrest and AssertJ)
Mocking (Mockito and EasyMock)
Mutation Testing (PIT)
IO (Streams and Readers)
IO & Streams
Databases
DB
Concurrency
Threads
Design patterns
Common Design Patterns
GraalVM
Recommended Reading
Java
Gradle
Docker
Kubernetes
JUnit
Mockito
Miscellaneous
Search
Java Boot Camp on GitHub
Control flow
Table of contents
If/Else
Others
Switch