Chapter 1 : Introduction to Language Fundamentals
Chapter 2 : Opreators and Assignments
Chapter 3 : Flow Control
Chapter 4 : Declaration & Access Modifiers
Chapter 5 : OOPs Concepts
Chapter 6 : Exception Handling
Chapter 7 : Collection
Chapter 8 : java.lang Package
Chapter 9 : Multithreading
Chapter 10 : Multithreading Enhancement
Chapter 11 : JVM Architecture
Chapter 12 : Inner Classes
Chapter 13 : File IO
Chapter 14 : Serialization
Chapter 15 : Generics
Chapter 16 : Assertion
Chapter 17 : Development
Chapter 18 : Garbage Collection
Chapter 19 : Enumeration
Chapter 20 : Internationalization (I18N)
Chapter 21 : Regular Expression
Chapter 22 : Concurrent Collections
Chapter 1 : Introduction to Language Fundamentals
- Identifiers & Reserve Keywords
- Data Types
- Literals
- Arrays
- main() method
- Command Line Arguments
- Coding Standards
Chapter 2 : Opreators and Assignments
- Increment & Decrement Operator
- Arithmetic Operators
- String Concatenation Operator
- Relational Operators
- Equality Operators
- instanceOf Operator
- Bitwise Operators
- Short Circuit Operator
- Type Cast Operator
- Assignment Operator
- Conditional Operator
- new Operator
- [] Operator
- Operator Precedence
- Evaluation order of Operands
- new vs newInstance
- instanceof vs isInstance()
- ClassNotFoundException vs NoClassDefFoundError
Chapter 3 : Flow Control
- if-else Statement
- switch Statement
- while loop
- for loop
- for-each loop / Enhanced for loop
- break
- continue
Chapter 4 : Declaration & Access Modifiers
- Java source file structure
- Class Level Modifiers
- Member Level Modifiers
- Interfaces
Chapter 5 : OOPs Concepts
- Data Hiding
- Abstraction
- Excapsulation
- Tightly Excapsulation class
- IS-A Relationship
- Has-A Relationship
- Method Signature
- Overloading
- Overriding
- Static control flow
- Instance control flow
- Constructor
- Coupling
- Cohesion
- Type-Casting
- Singleton Class
Chapter 6 : Exception Handling
- Introduction
- Runtime Stack Mechanism
- Default exception handling in java
- Exception class hierarchy
- Customized exception handling using try-catch
- Control flow in try-catch
- Methods to print exception information
- try with mutiple catch blocks
- finally block
- Difference between final,finally,finalize
- Control flow in try-catch-finally
- Control flow in nested try-catch-finally
- Various possible combinations of try-catch-finally
- throw keyword
- throws keyword
- Exception handling keyword summary
- Various possible compile-time errors in exception handling
- Customized (or) User-defined exceptions
- Top-10 exceptions
- Java 1.7 Enhancements
- try-with resources
- multi-catch block
Chapter 7 : Collection
- Limitations of Array
- Differences : Array vs Collection
- Collection & Collection Framework
- 9 Key interfaces of Collection Framework
- Collection(I)
- List(I)
- ArrayList
- LinkedList
- Vector
- Stack
- 3 Cursors of Java
- Enumerarion
- Iterator
- ListIterator
- Set(I)
- HashSet
- LinkedHashSet
- SortedSet
- TreeSet
- Comparable
- Comparator
- Map(I)
- HashMap
- LinkedHashMap
- IdentityHashMap
- WeakHashMap
- SortedMap
- TreeMap
- Hashtable
- Properties
- Queue(I)
- PriorityQueue
- NavigableSet
- NavigableMap
- Collections - Utility Class 1
- Arrays - Utility Class 2
Chapter 8 : java.lang Package
- Introduction to java.lang package
- Object Class
- String Class
- StringBuffer Class
- StringBuilder Class
- Wrapper Class
- Autoboxing & Autounboxing
Chapter 9 : Multithreading
- Introduction to Multithreading
- Ways to define a Thread
- By extending Thread Class
- By implementing Runnable Interface
- Getting & Setting a name of Thread
- Thread Priorities
- Methods to prevent Thread execution
- yield()
- join()
- sleep()
- Synchronization
- Inter-Thread Communication
- Deadlock
- Daemon Threads
Chapter 10 : Multithreading Enhancement
- ThreadGroup Class
- java.util.concurrent package
- Lock (Interface)
Chapter 11 : JVM Architecture
- Virtual Machine
- Types of Virtual Machine
- Hardware based VM
- Application based VM
- Basic Architecture of VM
- Class Loader Subsystem
- Loading
- Linking
- Initialization
- Types of Classloaders
- Bootstrap CL
- Extension CL
- Application CL
- How classloaders work
- Need of customized classloader
- Psuedo code of customized classloader
- Memory Aread of JVM
- Method Area
- Heap Area
- Stack Area
- PC registers
- Native method stacks
- Program to display head memory stats
- How to set Min & Max head size
- Execution Engine
- Interpreter
- JIT Compiler
- Java Native Interface (JNI)
- Complete Architecture Diagram of JVM
- Class file structure
Chapter 12 : Inner Classes
- Introduction to Inner Class
- Normal/Regular Inner Class
- Method Local Inner Class
- Anonymous Inner Class
- Normal Java Class vs Anonymous Inner Class
- Where Anonymous Inner Class are best suitable
- Static Nested Class
Chapter 13 : File IO
- File
- FileWriter
- FileReader
- BufferedWriter
- BufferedReader
- PrintWriter
Chapter 14 : Serialization
- Introduction
- Object Graph in Serialization
- Customized Serialization
- Serialization w.r.t Inheritance
- Externalization
- SerialversionUID
Chapter 15 : Generics
- Introduction
- Generic Classes
- Bounded Types
- Generics methods & Wild-card Character (?)
- Communication with non-generic code
- Conclusions
Chapter 16 : Assertion
- Introduction of Assertion
- "assert" as a keyword & identifier
- Types of assert statement
- Various possible runtime flags
- Appropriate & Inappropriate use of assertions
- AssertionError
Chapter 17 : Development
- javac command
- java command
- classpath settings
- JAR files
- System Properties
- JAR vs WAR vs EAR
- Web Application vs Enterprise Application
- Web Server vs Application Server
- How to create executable JAR file?
- Ways to run java program
- classpath vs path
- JDK vs JRE vs JVM
- java vs javaw vs javaws
Chapter 18 : Garbage Collection
- Introduction
- Ways to make an object eligible to GC
- Methods for requesting JVM to run GC
- Finzalization
Chapter 19 : Enumeration
- Introduction
- Internal Implementation of enum
- enum declaration & usage
- enum vs switch
- enum vs inheritance
- java.lang.Enum
- ordinal() method
- Speciality of java enum
- enum vs constructor
- enum vs Enum vs Enumeration
Chapter 20 : Internationalization (I18N)
- Introduction
- Locale
- NumberFormat
- DateFormat
Chapter 21 : Regular Expression
- Introduction
- Pattern
- Matcher
- Character Classes
- Predefined Character Classes
- Quantifiers
- Pattern class split() method
- String Tokenizer
Chapter 22 : Concurrent Collections
- ConcurrentHashMap
- CopyOnWriteArrayList
- CopyOnWriteArraySet
(Credits : Notes are prepared by watching Durga sir's videos from DurgaSoft)