1. Introduction to Java ï?· What is Java ï?· Java Versions and Environment ï?· Features of Java 2. Object Orientation and Java ï?· Object Oriented Programming Concepts ï?· Creating Classes and Objects ï?· Memory Management ï?· Up Casting ï?· Constructors ï?· Comparing Objects ï?· Inheritance ï?· Polymorphism 3. Advanced OOPS in Java ï?· Modifiers and Access Control ï?· Abstract Classes ï?· Interfaces ï?· Packages 4. Exception Handling ï?· Understanding Exceptions ï?· Multiple Handlers ï?· Nested Exception Handling ï?· Creating own Exceptions ï?· Practices in Java Exception Handling 5. Multithreading in Java ï?· Java Threading Model ï?· Creating Threads ï?· Thread Priorities ï?· Thread Synchronization ï?· Inter Thread Communication 6. String, String Buffer and String Builder in Java ï?· Understanding Various String Constructors ï?· Various String Operations and Character Extraction Methods ï?· Introduction to String Buffer class ï?· Understanding Various String Buffer Constructors ï?· Difference in String Buffer and String Builder 7. I/O Streams and Object Serialization ï?· Java Streams ï?· File Class ï?· Java Input and Output Streams Hierarchy ï?· File Streams ï?· Buffered Streams ï?· Object Streams and Serialization ï?· Deserialization ï?· Externalization ï?· NIO classes 8. Collections Framework & Wrapper Classes ï?· Introduction of Collections Framework ï?· Working with different Collections (List, Set, Map) and Iterator 9. Generics ï?· Defining Simple Generics ï?· Generics and Sub typing ï?· Bounded type ï?· Bounded Wildcards 10. Inner Classes ï?· Introduction of Inner Class ï?· Accessing Members of Outer class within an Inner class ï?· Static Nested Classes 11. JAVA 8 Features ï?· Lambda Expressions ï?· Functional Interfaces ï?· Method Reference ï?· Streams ï?· Memory management 12. Design Patterns ï?· Singleton Design pattern ï?· Factory Design Pattern