Introduction
- High-level OOP language
- Compiled + interpreted language
- Platform-independent language (Java run on JVM)
- Same
.class file can run on any OS.
- Compiler compiles code and converts to platform-independent byte code.
- Only condition to run byte code is the machine have a JRE.
- Has a Garbage Collector.
Java code (.java)
↓ compile
Bytecode (.class)
↓
JVM (Java Virtual Machine)
↓
Windows / macOS / Linux
JVM, JRE, JDK, JIT
String
Composition & Aggregation
Java Collection
Exception
Thread
Design Pattern