0% found this document useful (0 votes)
14 views8 pages

Java

The document outlines a structured 8-day learning plan for Java and JavaScript, covering essential programming concepts such as Java basics, OOP principles, inheritance, polymorphism, encapsulation, and abstraction. Each day includes a time plan for theory, practice, and mini projects to reinforce learning. Additionally, it provides resources and practice ideas for JavaScript fundamentals, DOM manipulation, and real-world applications through mini projects like a To-Do List and a Click Counter.

Uploaded by

Frebaka Jesi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views8 pages

Java

The document outlines a structured 8-day learning plan for Java and JavaScript, covering essential programming concepts such as Java basics, OOP principles, inheritance, polymorphism, encapsulation, and abstraction. Each day includes a time plan for theory, practice, and mini projects to reinforce learning. Additionally, it provides resources and practice ideas for JavaScript fundamentals, DOM manipulation, and real-world applications through mini projects like a To-Do List and a Click Counter.

Uploaded by

Frebaka Jesi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

🌟 DAY 1: Java Basics + OOP Introduction

⏱ Time Plan:
●​ 1 hr: Java basics (syntax, data types, control flow)​
●​ 1 hr: OOP Concept overview + GFG basics​
📚 Theory:
1.​ Java Basics:​
○​ Variables & Data Types​
○​ Input/Output (Scanner)​
○​ Conditional Statements (if, switch)​
○​ Loops (for, while)​
○​ Functions (void, return types)​
2.​ ✅✅GFG - Java Basics​
GFG - Java Control Statements​
3.​ Intro to OOP:​
○​ What is Object-Oriented Programming?​
○​ 4 Pillars: Encapsulation, Inheritance, Polymorphism, Abstraction​
○​ Why use OOP in Java?​
4.​✅ GFG - Intro to OOP​
🧠●​Practice:
✅ GFG - Basic Java Programs​
●​ Write small programs:​
○​ Sum of two numbers​
○​ Even or odd​
○​ Simple calculator using switch​
🌟 DAY 2: Classes and Objects
⏱ Time Plan:
●​ 45 mins: Learn class syntax, object creation​
●​ 1 hr 15 mins: Practice creating and using classes​
📚1.​Theory:
Class Structure:​
○​ Fields (variables inside class)​
○​ Methods​
○​ Object creation using new​

2.​ ✅ GFG - Class and Object​


3.​ Access Modifiers:​
○​ public, private, default​
🧠 Practice:
Create these classes:
●​ Student with name, age, display()​

●​ Rectangle with length, breadth, area()​

●​ BankAccount with deposit(), withdraw(), balance()​

✅ Practice MCQs: GFG - OOPs MCQs


🌟 DAY 3: Constructors + this Keyword
⏱ Time Plan:
●​ 1 hr: Learn all constructor types​
●​ 1 hr: Use this keyword in examples​
📚 Theory:
1.​ Types of Constructors:​
○​ Default Constructor​
○​ Parameterized Constructor​
○​ Copy Constructor​
2.​ ✅ GFG - Constructors​
3.​ this Keyword:​
○​ Referring current object​
○​ Constructor chaining​
4.​ ✅ GFG - this keyword​
🧠 Practice:
●​ Class Book with constructors for title and author​
●​ Class Employee using this keyword to assign values​
●​ Constructor chaining example​
🌟 DAY 4: Inheritance
⏱ Time Plan:
●​ 45 min: Learn all inheritance types​
●​ 1 hr 15 min: Build parent-child class structures​
📚 Theory:
1.​ Types of Inheritance:​
○​ Single​
○​ Multilevel​
○​ Hierarchical (Java doesn't support multiple directly)​
2.​ ✅ GFG - Inheritance in Java​
3.​ Keyword: extends​

🧠●​Practice:
Animal → Dog, Cat → Override sound()​

●​ Vehicle → Car → ElectricCar​

●​ Call parent constructor using super()​

✅ GFG - Inheritance Practice


🌟 DAY 5: Polymorphism
⏱ Time Plan:
●​ 1 hr: Learn overloading vs overriding​
●​ 1 hr: Implement both​
📚 Theory:
1.​ Compile-time Polymorphism: Method Overloading​
2.​ Run-time Polymorphism: Method Overriding​

🧠 GFG - Polymorphism
Practice:
●​ Overload add() with 2, 3 parameters​
●​ Override greet() in parent-child​
●​ Practice polymorphism using parent reference → child object​
🌟 DAY 6: Encapsulation & Abstraction
⏱ Time Plan:
●​ 45 min: Learn both concepts​
●​ 1 hr 15 min: Build programs using getters, setters, abstract classes​
📚 Theory:
1.​ Encapsulation:​
○​ private fields​


○​ getters and setters​
Encapsulation GFG​
2.​ Abstraction:​
○​ Abstract class​


○​ Abstract methods​
Abstraction GFG​
🧠●​Practice:
Person class with private name, age → getter/setter​
●​ Abstract class Shape with area() → Implement Circle, Square​
🌟 DAY 7: Interface + Keywords: final, static, super
⏱ Time Plan:
●​ 1 hr: Learn interface and differences from abstract class​
●​ 1 hr: Learn and apply keywords​
📚 Theory:
1.​ Interface:​
○​ Syntax: interface MyInterface​

○​ Implements keyword​
2.​ ✅ GFG - Interfaces​
3.​ Keywords:​
○​ final (constant, can't override)​
○​ static (shared across all instances)​
○​ super (call parent class constructor/method)​
4.​ ✅ GFG - Keywords​
🧠●​Practice:
Create Playable interface, implement in Football, Cricket​

●​ Use final variable, static counter, super() constructor​


🌟 DAY 8: Final Practice + Mini Project
⏱ Time Plan:
●​ 1 hr: Quick revision of all 7 days​
●​ 1 hr: Build mini-project using OOP concepts​
📚●​Review:
Revisit important links from Days 1–7​
●​ Note common OOP interview questions​
🧠 Mini Project Ideas:
●​ Library Management System​
○​ Class: Book, Member, Library​

○​ Use: constructors, inheritance, interface​


●​ Student Report Card​
○​ Fields: marks, grades​
○​ Use: encapsulation, polymorphism​
✅ Solve more: GFG OOP Track
🟡 DAY 1 – JavaScript Core + DOM Basics
⏱ Time Plan (3 hours):
●​ 1 hr – JavaScript fundamentals​
●​ 1 hr – Practice problems​
●​ 1 hr – DOM + mini project​
📚 Part 1: JavaScript Fundamentals (1 hr)
Learn basic syntax, variables, data types, functions.
🔗●​Resources:
JavaScript Basics – GFG​
●​ MDN JavaScript Guide​
📌●​Topics to cover:
var, let, const​

●​ Data Types (string, number, boolean, array, object)​


●​ Operators (+, ==, ===, &&, etc.)​
●​ Conditionals (if, else, switch)​
●​ Loops (for, while, for...of)​
●​ Functions (regular & arrow)​
●​ Arrays & Objects (push, pop, forEach, etc.)
💻 ●​
Part 2: Practice Time (1 hr)
Use online IDE like JSFiddle, CodePen, or browser console.
✅●​Practice ideas:
Write a function to reverse a string​
●​ Sum of array elements​
●​ Check if number is prime​
●​ Use for loop to print table of a number​
Optional: Try GFG JavaScript Quizzes
🔧 Part 3: DOM Basics + Mini Project (1 hr)
📌●​Topics:
Learn how JS interacts with HTML.
[Link], getElementById​

●​ addEventListener​

●​ Changing content with .innerHTML​

●​ Changing style dynamically​


✅ Mini Project 1: Simple Click Counter
●​ HTML Button → “Click me”​
●​ JavaScript tracks how many times clicked​
●​ Display count on screen​
🔗 Help: Intro to DOM – GFG
🟢 DAY 2 – Events, Forms, Arrays, Real Projects
⏱ Time Plan (3 hours):
●​ 1 hr – Events, form handling, advanced functions​
●​ 1 hr – Practice + real-world use cases​
●​ 1 hr – Mini Project 2: Interactive To-Do List
📚 Part 1: Deeper Concepts (1 hr)
📌●​Topics:
Events: onclick, onchange, keydown, etc.​
●​ Forms: submit, preventDefault(), reading inputs​
●​ map, filter, reduce with arrays​
●​ JSON (brief) & localStorage (optional)​
🔗●​Learn:
JavaScript Events – GFG​
●​ Forms in JS – GFG​
✅●​Practice:
Read text input and display greeting​
●​ Use map() to double an array​
●​ Filter out even numbers​
●​ Use [Link] to store values
🔄 ●​
Part 2: Practice + Real UI Challenges (1 hr)
✅●​TryToggle
these:
dark/light mode​
●​ Show/hide a password field​
●​ Validate form fields (email, password length)​
●​ Create a digital clock using setInterval()​

Use: CodePen, JSFiddle


✅ Part 3: Mini Project – To-Do List (1 hr)
Project: Interactive To-Do App
●​ Input: Add task​
●​ Display list of tasks​
●​ "Delete" and "Mark Complete" buttons​
●​ Optional: Save tasks to localStorage​
📌●​You’ll use:
DOM manipulation​
●​ Event listeners​
●​ Array methods​
●​ Form handling​
●​ Conditional rendering​
🔗●​Sample UI inspiration:
[Link]
●​ [Link]
🎁 BONUS: Stretch Goals (Optional if time allows)
●​ Learn setTimeout, setInterval​

●​ Explore fetch() & JSON (for APIs)​


●​ Add localStorage to mini projects​
●​ Use JavaScript30 (free project challenge by Wes Bos)
🧠 Tips:
●​ Use DevTools (F12 in Chrome) for debugging​
●​ Try to explain code out loud to yourself​
●​ Don’t copy-paste — type it out​
●​ Keep all projects saved in a folder or GitHub​

You might also like