Extras
Core Java Course Introduction
Course contents -- Java 8
- Language features (Installation, Buzzwords, History, JRE/JDK/JVM, Compilation, Operators, Data types, Narrowing/Widening)
- Control Structures (if-else, loops, switch, recursion, wrapper classes, boxing, value/reference type)
- Input/Output:
Command line args
, Scanner
, Console
- OOP basics (
OOP pillars
, class/object
, class methods
, constructor chaining
, overloading
, final field
, toString()
, enum
)
- Static (static fields/method/block), Singleton, Package (
classpath
), static import
- Arrays (1-D & 2-D array, primitive and object array,
java.util.Arrays
)
- OOP advanced (aggregation/association/composition, Inheritance, super, Method overriding,
instanceof
, final method/class, Abstract class, Java 7 Interfaces, Marker interfaces)
- Java classes (
java.lang.Object
, Date/LocalDate/Calendar, String/StringBuilder/StringBuffer, etc)
- Exception Handling (try-catch-throw, throws, finally, try-with-resource/Closeable, errors, custom exception, checked/unchecked, overriding rules)
- Java Generics (methods, classes, interfaces), Comparable/Comparator interface, Java 8 Interfaces
- Nested classes, Functional Interfaces, Lambda expressions, Method references
- Java Collections (Hierarchy, Lists, Iterator, Sets, Maps, Queue/Stack, Fail-safe/Fast-fast iterators, Legacy collections, Collections)
- Functional programming (Concepts, Java 8 interfaces, Stream characteristics, Stream operations, Collectors)
- Java IO (Binary vs Text streams, File IO, Stream chaining, Data stream, Serialization, Reader/Writers)
- Multi-threading (Thread vs Runnable, thread methods, Thread group, Synchronization, Deadlock)
- JVM Architecture, Reflection, Annotation, Garbage Collection
Reference Books