Let’s Start
- History
- JVM
- JDK
- JRE
- Hello World
- JavaDoc
- Classes & Packages
- API Documentation
The Basic
- Java comparing with C++
- Simple Output
- Remarks
- Native Data Types
- Variables
- Keywords
- Identifiers
- Expressions & Operators
- Simple & Compound Statements
- Control Statements
- Looping Statements
- Assignments
- Local Variables
- Assertion
- Annotations
Introduction to OOP
- Software Development Cycle
- Objects & Classes
- Key Features of OOP
- Relationships between Objects
Object Oriented Programming
- Objects Classes & Class Type Variables
- Declaring Classes, Class Type Variables
- Calling a Method
- The ‘this’ Special Keyword
- Class Declaration
- Declaring Attributes
- Declaring Methods
- Methods Overloading
- Declaring Constructors
- Default Constructors
- Overloading Constructors
- Using ‘this’ within Constructors
- Static Variables
- Static Methods
- Static Initializers
- Final Variables
- Software Packages
- Package Statement
- The ‘import’ Statement
- Declaring Enums
- Java API Documentation
Arrays & Strings
- Array of Native Type Values
- Array of Objects
- Square Brackets Position
- Copying Array Values
- Multi Dimensional Array
- The ‘length’ Variable
- The ‘String’ Class
- Instantiating String
- Comparing Strings
- The ‘toString()’ Method
- The StringBuffer Class
- The StringBuilder Class
- The StringTokenizer Class
- Passing Arguments to ‘main’ Method
Inheritance
- Introduction to Inheritance
- Inheritance in Java
- Derivation Syntax
- Inheritance Meaning
- Constructors & Inheritance
- Access Modifiers
- Overriding Methods
- Polymorphism
- Constructors & ‘super’ Keyword
- Abstract Class
- Interfaces
- The ‘instanceof’ Operator
- Casting References
- Deprecated Methods
- The ‘object’ Class
Inner Classes
- Inner Classes Types
- In-Depth Meaning
- Inner Classes within Methods
- Anonymous Inner Class
- Static Inner Class
Exceptions Handling
- The Exceptions Handling Mechanism
- Exceptions Classes Hierarchy
- Three Types of Exceptions
- Try&Catch Statement
- The ‘throw’ Command
- The Throwing Chain
- The ‘finally’ Block
- The ‘throws’ Adding
- The ‘Handle or Declare’ Rule
- Methods Overloading, Samples
Threads Basics
- What is a Thread?
- The Thread Parts
- Creating New Thread
- Starting The Thread
- Multiple Threads
I/O Streams
- Java I/O Overview
- I/O Streams Categories
- Byte & Char Streams
- The InputStream Abstract Class
- The OutputStream Abstract Class
- Writing/Reading To/From Files
Generics
- Introduction
- Subtypes
- Wildcards
Collections
- Introduction
- Performance
- Set
- List
- Queue
- Map