Getting Started
Introduction to Java Virtual Machine
How to write basic "hello world" application
How to compile and execute Java code
Java Syntax
Object-Oriented Programming Concepts
Variables, arrays, data types, operators, and control flow
Classes and objects
Inheritance and interfaces
How to use Java String and Number objects and how to format data for output
What packages are for and why we must use import directive
Java Objects
Java classes overview
Java class life cycle
Class modifiers and inheritance
Overloading and overriding
Class constructors
Polymorphism
Relationships: IS and HAS
'static' keyword
When to use static members
Java Collections
Collection interface
Lists, maps, queues and sets
Collections and arrays
Java Exceptions
The general idea of Java Exceptions
Runtime and 'real' exceptions
Throwing an exception
'try...catch' statements
'throws' declaration
Designing your own exceptions
IO API
Streams and Filters
File Handling
Object Serialization
NIO.2 basics
Other Java features
Enumeration details, adnotations, static block
JUnit basics - testing
Inner classes, anonymous classes
Lambda expressions and Optional class (Java 8)
Introdution to modules (Java 9)
Java Concurrency
Threads and concurrency
Threaded tasks
Joining threads
Class variables visibility
|