Skip to content

rhoopphiuchi/Java_Enlightment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

☕ Java Learning Repository

A structured, hands-on collection of Java concepts, exercises, and projects — from absolute beginner to confident developer.


📚 What's Inside

This repository is organized by topic and difficulty level. Each section contains:

  • Concept notes with clear explanations
  • Code examples you can run immediately
  • Exercises to test your understanding
  • Solutions (in a separate folder — try first!)

🗂️ Repository Structure

java-learning/
├── 01-basics/
│   ├── variables-and-types/
│   ├── operators/
│   ├── control-flow/
│   └── loops/
├── 02-oop/
│   ├── classes-and-objects/
│   ├── inheritance/
│   ├── polymorphism/
│   ├── abstraction/
│   └── encapsulation/
├── 03-core-java/
│   ├── strings/
│   ├── arrays/
│   ├── collections/
│   ├── generics/
│   └── exceptions/
├── 04-advanced/
│   ├── streams-and-lambdas/
│   ├── multithreading/
│   ├── file-io/
│   └── design-patterns/
├── 05-projects/
│   ├── bank-account-system/
│   ├── student-management/
│   └── mini-library/
└── solutions/

🚀 Getting Started

Prerequisites

Setup

# Clone the repository
git clone https://github.com/your-username/java-learning.git
cd java-learning

# Verify Java is installed
java --version

# Compile and run any example
javac 01-basics/variables-and-types/HelloWorld.java
java HelloWorld

🛣️ Learning Path

🟢 Beginner

  1. 01-basics — Syntax, variables, data types, operators
  2. 01-basics/control-flow — if/else, switch statements
  3. 01-basics/loops — for, while, do-while, enhanced for

🟡 Intermediate

  1. 02-oop — The four pillars of Object-Oriented Programming
  2. 03-core-java/strings — String manipulation and methods
  3. 03-core-java/arrays — Arrays and multi-dimensional arrays
  4. 03-core-java/collections — List, Set, Map and when to use each
  5. 03-core-java/exceptions — Try-catch, custom exceptions

🔴 Advanced

  1. 03-core-java/generics — Type-safe code with generics
  2. 04-advanced/streams-and-lambdas — Functional programming in Java
  3. 04-advanced/multithreading — Concurrency and thread safety
  4. 04-advanced/design-patterns — Common patterns like Singleton, Factory, Observer

🏗️ Projects

Applying everything learned in 05-projects/.


💡 How to Use This Repo

  1. Read the concept notes in each folder (README.md or Notes.md)
  2. Study the example files (e.g., Example.java)
  3. Attempt the exercises in Exercise.java (look for // TODO comments)
  4. Check your work against solutions/ — only after you've tried!
  5. Experiment — modify the examples and see what happens

📝 Topics Covered

Topic Status
Variables & Data Types 📋 Planned
Control Flow 📋 Planned
Loops 📋 Planned
Methods 📋 Planned
Classes & Objects 📋 Planned
Inheritance 📋 Planned
Interfaces & Abstract Classes 📋 Planned
Collections Framework 📋 Planned
Exception Handling 📋 Planned
Generics 📋 Planned
Streams & Lambdas 📋 Planned
File I/O 📋 Planned
Multithreading 📋 Planned
Design Patterns 📋 Planned
Unit Testing (JUnit) 📋 Planned
Spring Boot Basics 📋 Planned

🤝 Contributing

Contributions are welcome! If you'd like to add examples, fix bugs, or improve explanations:

  1. Fork the repository
  2. Create a branch: git checkout -b feature/add-topic-name
  3. Commit your changes: git commit -m "Add examples for topic X"
  4. Push and open a Pull Request

Please keep code clean, well-commented, and beginner-friendly.


📖 Recommended Resources


📄 License

This repository is licensed under the MIT License. Feel free to use, share, and modify for learning purposes.


"Java is to JavaScript what car is to carpet." — Keep learning, keep coding. ☕

About

Lets learn Java

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors