Unit 1 – Introduction to Java and OOP (10 hrs)
-
“Java Is the Swiss Army Knife of Programming – Why It’s Still Relevant” (Features & Importance)
-
“The Java Virtual Machine as a Universal Translator for Code” (JVM & Bytecode)
-
“Keywords as Reserved Parking Spots in Java” (Keywords)
-
“Constants & Variables: Lockers That Hold Your Data” (Constants & Variables)
-
“Data Types: Choosing the Right Container for the Job” (Data Types)
-
“Operators & Expressions: Math and Logic Tools for Your Code” (Operators & Expressions)
-
“Type Casting as Pouring Data from One Glass to Another” (Casting & Conversion)
-
“Decision Making: if, else, and switch as Crossroads in Your Program” (if, if-else, switch)
-
“Loops as Hamster Wheels – Repeating Tasks Until Done” (for, while, do-while)
-
“Break & Continue as Emergency Stops and Skips” (Jump Statements)
-
“The Scanner Class as Java’s Microphone – Listening to User Input” (Input)
-
“Arrays as Bookshelves for Data” (Single & Multi-dimensional Arrays)
-
“Dynamic Array Referencing: Renting Storage on Demand” (Referencing Arrays Dynamically)
-
“Strings as Bead Necklaces – Immutable and Precious” (String Class Basics)
-
“String Equality: Comparing DNA Strands of Text” (String Immutability & Equality)
-
“OOP as a Real-World Blueprint for Code” (OOP Features)
-
“Classes & Objects: Cookie Cutters and Cookies” (Class & Object)
-
“Overloading Methods as Multi-Tool Functions” (Overloading)
-
“Static Members as Shared Bulletin Boards” (Static Members)
-
“this Keyword: Pointing to Yourself in a Crowd” (this Keyword)
-
“Constructors as House Builders – Default, Custom, and Copy” (Constructors)
Unit 2 – Inheritance and Polymorphism (10 hrs)
-
“Access Specifiers as Security Levels in a Building” (Access Specifiers)
-
“Inheritance: Children Borrowing Traits from Parents” (Intro to Inheritance)
-
“The super Keyword: Calling Your Parents for Help” (super Keyword)
-
“Simple Inheritance: One Parent, One Child” (Simple Inheritance)
-
“Multilevel Inheritance: Family Lineages in Code” (Multilevel)
-
“Hierarchical Inheritance: One Parent, Many Children” (Hierarchical)
-
“Static Polymorphism: Overloading as Different Doors to the Same Room” (Method Overloading)
-
“Dynamic Polymorphism: Overriding as Customizing Inherited Recipes” (Method Overriding)
-
“Abstract Classes: Blueprints Without Full Instructions” (Abstract Class & Method)
-
“Interfaces: Contracts That Classes Must Fulfill” (Interfaces)
-
“Packages as Organized Neighborhoods for Code” (Packages)
Unit 3 – Exception Handling and Multithreading (10 hrs)
-
“Exceptions: Fire Alarms in Your Code” (Dealing with Errors)
-
“Exception Classification: Minor Spills vs Full-On Floods” (Checked vs Unchecked)
-
“Throwing Exceptions: Passing the Problem Up the Chain” (Declaring & Throwing)
-
“Catching Exceptions: Safety Nets for Risky Code” (try-catch)
-
“finally Clause: Cleanup Crews That Always Show Up” (finally)
-
“Threads: Multiple Cooks in the Kitchen” (Multithreaded Programming Basics)
-
“Java Thread Model: Coordinating Multiple Workers” (Thread Model)
-
“Thread Priorities: VIP Access in Multitasking” (Priorities)
-
“Synchronization: Traffic Signals for Threads” (Synchronization)
-
“Runnable Interface: Job Descriptions for Threads” (Runnable)
-
“Inter-Thread Communication: Passing Notes Between Workers” (Inter-thread Communication)
-
“Wrapper Classes: Dressing Up Primitive Data” (Wrapper Classes)
-
“Autoboxing & Unboxing: Automatic Packing and Unpacking” (Autoboxing/Unboxing)
-
“Enumerations: Fixed Menu Options in Code” (Enums)
Unit 4 – I/O Stream and Collections (10 hrs)
-
“Files as Digital Filing Cabinets” (File Handling)
-
“Reading Files: Browsing Through Documents” (Reading)
-
“Writing Files: Leaving Notes in a Folder” (Writing)
-
“Buffered I/O: Filling Your Basket Before Unloading” (Buffered I/O)
-
“Character Streams: Handling Text Smoothly” (Character Streams)
-
“Byte Streams: Moving Raw Data Like Trucks of Boxes” (Byte Streams)
-
“Java Collections: Organized Storage for Groups of Objects” (Intro to Collections)
-
“Lists: To-Do Lists That Keep Their Order” (ArrayList, LinkedList)
-
“Sets: Unique Item Collections Like Stamp Albums” (HashSet, LinkedHashSet)
-
“Maps: Address Books Linking Names to Numbers” (HashMap)
-
“Working with Collections: Adding, Removing, Searching, Iterating” (Collection Operations)