Duration: 48 hours (8 days)
Topics:
- The import statement
- The java.lang API classes
- The java.util API classes
- The java.time API classes
- The java.text API classes
- The Java.math API classes
- The java.io API classes
- Class relationships
- HAS-A
- IS-A
- The OOP Principles
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
- Abstract and Sealed classes
- Interfaces and its utilities
- Shadowing
- Exception handling
- Error and Exception
- Types of Exception handling
- Switch-case that throws exceptions
- Functional exception handling
- Generic programming
- Collection Framework
- ArrayList
- LinkedList
- Vector
- HashSet
- LinkedHashSet
- TreeSet
- HashMap
- LinkedHashMap
- TreeMap
- Unmodifiable collections
- Concurrent collections
- Sorting Collection objects
- Enumerables and iterables
- POJO and Record
- Sequenced Collections
- Object Anatomy
- Object methods
- The this and super keyword
- The this() and super() constructor functions
- Constructor
- Overloading of constructor
- Private constructor
- Lazy and Eager initialization
- Upcasting and downcasting
- Initialization Blocks (IB)
- Profiling
- Inner class
- Nested class
- Static inner class
- Method Local inner class
- Anonymous inner class
- Enum objects
- Constants objects
- The Enum class
- The Enum collections
- Threading
- Thread and Runnable
- The use of wait() and notify()
- The Thread utilities
- The use of Runnable
- Synchronization techniques
- Cooperation
- Competition
- The ExecutorService and thread pooling
- The Callable
- Virtual Threads
- NIO 2.0
- The FileSystem and FileStore
- The Path, Paths, and Files API classes
- The BufferedReader and BufferedWriter
- Chanel and Buffer
- MappedByteBuffer
- Threading and Stream in NIO 2.0
- Java Streams
- Lambda expression
- Functional interfaces
- The Stream API
- The stream operators
- Difference of collection data and stream data
- Lambda expression, Stream, and NIO 2.0