Skip to content

☕ A collection of core Java programs covering OOPs, DSA, patterns, and more. Perfect for beginners, students, and anyone brushing up on Java basics.

License

Notifications You must be signed in to change notification settings

Piyush64-bit/Java-Programs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

License: MIT

Java Logo

☕ From Noob to Ninja

A Complete Learning Journey Through 100+ Java Programs

Status Programs Java Days

GitHub stars GitHub forks License


🎯 Mission Accomplished!

This repository chronicles my 100-day journey mastering Java programming from absolute basics to advanced concepts. Every line of code represents dedication, growth, and the pursuit of becoming a skilled Software Development Engineer.


📋 Table of Contents

🧠 What's Inside

📁 100+ Java Programs organized into comprehensive modules

🟢 Core Fundamentals

  • 📝 Variables & Data Types
  • 🔄 Control Structures
  • 🧩 Method Mastery
  • 🗃️ Arrays & Collections

🟡 Object-Oriented

  • 🏗️ Classes & Objects
  • 🧬 Inheritance & Polymorphism
  • 🛡️ Encapsulation
  • 🧱 Abstraction

🔴 Advanced Concepts

  • ⚠️ Exception Handling
  • 📦 Package Management
  • 🔗 Lambda Expressions
  • 🧬 Generics

🎮 Featured Projects

Project Description Concepts
🎲 Quiz Game Interactive console application Control Flow, Collections
📊 Grade Manager Student management system OOP, File I/O
🧮 Calculator Mathematical operations Methods, Exception Handling
🏦 Bank Simulator Real-world application Advanced OOP, Design Patterns

📚 Topics Covered

🔥 Click to explore all 50+ concepts mastered

🌱 Learning Progression

journey
    title Java Learning Journey
    section Fundamentals
      Hello World     : 5: Day 1
      Variables       : 4: Day 5
      Control Flow    : 3: Day 10
      Arrays         : 4: Day 15
    section OOP
      Classes        : 5: Day 25
      Inheritance    : 4: Day 35
      Polymorphism   : 5: Day 45
    section Advanced
      Exceptions     : 4: Day 65
      Generics       : 5: Day 80
      Lambda         : 5: Day 95
Loading

🟢 Fundamentals (Days 1-20)

  • ✅ Variables & Data Types (Primitive & Reference)
  • ✅ Operators (Arithmetic, Logical, Bitwise)
  • ✅ Input/Output Operations
  • ✅ Control Flow (if-else, switch, loops)
  • ✅ Methods & Parameter passing
  • ✅ Arrays (1D, 2D, Jagged)

🟡 Intermediate (Days 21-60)

  • ✅ Object-Oriented Programming Fundamentals
  • ✅ Classes & Objects
  • ✅ Constructors & Method Overloading
  • ✅ Inheritance & super keyword
  • ✅ Polymorphism (Runtime & Compile-time)
  • ✅ Abstract Classes & Interfaces

🟠 Advanced OOP (Days 41-70)

  • ✅ Packages & Access Modifiers
  • ✅ String Manipulation & StringBuilder
  • ✅ Exception Handling & Custom Exceptions
  • ✅ File I/O Operations
  • ✅ Collections Framework Overview

🔴 Expert Level (Days 71-100)

  • ✅ Generics & Type Safety
  • ✅ Collections Framework (List, Set, Map)
  • ✅ Lambda Expressions & Functional Interfaces
  • ✅ Stream API & Method References
  • ✅ Multithreading Basics
  • ✅ Design Patterns (Singleton, Factory)

🗂️ Repository Structure

🔍 Click to explore the complete folder structure
📦 Java-Programs
├── 📁 01_Basic/                     ← 🌟 Start Here!
│   └── 🧪 Practice-Set/
├── 📁 02_DataTypes/                 ← 🎯 Primitives & Objects
├── 📁 03_Variables/                 ← 🔄 Scope & Lifecycle
├── 📁 04_OperatorsAndExpressions/   ← ➕ Mathematical Operations
│   └── 🧠 PracticeProblem/
├── 📁 05_ControlStatement/          ← 🎮 Logic & Flow Control
│   └── 🎲 QuizGame/                 ← Mini Project!
├── 📁 06_Methods/                   ← 🔧 Reusable Code
│   └── 📊 Practice_Project/         ← Grade Manager
├── 📁 07_ArrayAndString/            ← 📝 Data Structures
├── 📁 08_OOPs/                      ← 🏗️ Object-Oriented Basics
│   ├── 🧱 Abstraction/
│   ├── 🛡️ Encapsulation/
│   └── 🚗 Inheritance/
├── 📁 09_ArrayAndString/            ← 📋 Advanced Collections
│   └── 📋 ArrayList/
├── 📁 10_String/                    ← 🧵 Text Processing
├── 📁 11_OOPs/                      ← 🧬 Advanced OOP
│   ├── 👨‍👩‍👧 inheritance/
│   ├── 🧠 OOPs1/
│   ├── 🧬 OOPs2/
│   └── 🧪 OOPs3/
├── 📁 Exception_Handling/           ← ⚠️ Error Management
├── 📁 LambdaExpression/             ← 🔗 Functional Programming
├── 📁 OOPs/Generics/                ← 🧬 Type Safety
└── 📁 SelfQuestions/                ← 🧠 Challenge Yourself!
    └── 🧪 01_BasicQuestions/

🛠️ Tech Stack

💻 Development Environment


Java 24
OpenJDK

VS Code
Java Extension Pack

Git
Version Control

Windows 11
Development Platform

Java VS Code Git GitHub Windows


⚙️ Quick Start Guide

🚀 Get Started in 3 Steps

1️⃣ Clone

git clone https://github.com/Piyush64-bit/Java-Programs.git
cd Java-Programs

2️⃣ Compile

cd 01_Basic
javac HelloWorld.java

3️⃣ Run

java HelloWorld
💡 Pro Tips & Advanced Commands

🎯 Different Scenarios

Single File Programs:

javac FileName.java && java FileName

Package-based Programs:

# Compile from root directory
javac -d . package/path/ClassName.java

# Run with full package name
java package.path.ClassName

Multiple Classes:

# Compile all files in directory
javac *.java

# Run the main class
java MainClassName

🔧 Useful Shortcuts

# Quick compilation for current directory
find . -name "*.java" -exec javac {} +

# Run with custom classpath
java -cp . com.example.MainClass

# Debug mode
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 MainClass

🌟 Learning Journey

🎯 My Transformation Timeline

🤔 Day 1

"What's a variable?"

Starting from scratch

💡 Day 50

"I understand OOP!"

Concepts clicking

🚀 Day 80

"Lambda expressions!"

Advanced features

🏆 Day 100

"I'm a Java developer!"

Mission accomplished

💪 What This Journey Taught Me:

🧠 Technical Skills:

  • Problem-solving mindset
  • Clean code practices
  • Debugging expertise
  • Design pattern recognition

🎯 Soft Skills:

  • Persistence and consistency
  • Self-directed learning
  • Documentation importance
  • Community engagement

🏆 Key Milestones Achieved

🎯 Milestone 📅 Day 💭 Reflection
✅ First "Hello World" Day 1 The beginning of everything
✅ First working loop Day 8 Understanding iteration
✅ First custom class Day 25 OOP breakthrough moment
✅ First inheritance Day 35 Code reusability unlocked
✅ Exception handling Day 55 Writing robust code
✅ Lambda expressions Day 85 Modern Java mastery
100th program Day 100 Mission Accomplished!

🎯 Key Achievements

📊 By the Numbers

100+

Programs
Written & Tested

50+

Concepts
Mastered

100

Days
Dedicated Learning

5000+

Lines
Of Code

15+

Projects
Completed

🌟 Standout Programs & Projects

🎮 Interactive Quiz Game

  • Features: Multiple choice questions, scoring system, difficulty levels
  • Concepts: Control flow, collections, user input validation
  • Lines: 200+ lines of well-structured code

📊 Student Grade Manager

  • Features: CRUD operations, file persistence, grade calculations
  • Concepts: OOP design, file I/O, exception handling
  • Lines: 300+ lines with comprehensive error handling

🧮 Advanced Calculator

  • Features: Scientific operations, expression parsing, history
  • Concepts: Method overloading, static methods, string manipulation
  • Lines: 250+ lines with modular design

🏦 Bank Account Simulator

  • Features: Multiple account types, transactions, interest calculation
  • Concepts: Inheritance, polymorphism, encapsulation
  • Lines: 400+ lines demonstrating real-world OOP

🚀 Next Steps

🎯 Ready for the Next Challenge?

🌟 Advanced Java Journey Continues!

Having mastered the fundamentals, it's time to dive into enterprise-level Java development! The journey doesn't stop here—it evolves.

What's Next:

  • 🌐 Web Development with Spring Framework
  • 🗄️ Database Integration with Hibernate & JPA
  • 🔗 RESTful APIs and Microservices
  • 🧪 Testing with JUnit & Mockito
  • 🏗️ Enterprise Patterns and Architecture
  • ☁️ Cloud Deployment and DevOps

📚 Continue Learning


Advanced Java Programs



🚀 Explore Advanced Concepts:

  • Spring Boot Applications
  • RESTful Web Services
  • Database Operations
  • Security Implementation
  • Testing Frameworks

🔗 Start Advanced Java Journey →

🎮 Learning Path Progression

📚 Core Java (✅ COMPLETED)
       ↓
🌐 Advanced Java (🚀 IN PROGRESS)
       ↓
☁️ Full Stack Development (🔜 COMING SOON)

🤝 For Learners

🎓 This Repository is Perfect For:

📚 Beginners

Starting their Java journey from scratch

Zero to Hero path

🔄 Intermediate

Reviewing and strengthening core concepts

Skill reinforcement

🎯 Students

Preparing for interviews or exams

Academic excellence

👨‍💻 Self-learners

Who prefer learning by example

Hands-on approach

🌟 How to Use This Repository:

📖 Learning Path

  1. Start with Basics - Follow numbered folders sequentially
  2. Practice Along - Don't just read, code along!
  3. Modify & Experiment - Change code and observe results
  4. Challenge Yourself - Solve problems before looking at solutions

🚀 Contribution Guidelines

  • 🐛 Found a bug? Open an issue with details
  • 💡 Have a better solution? Submit a pull request
  • 📝 Want to add documentation? We'd love that!
  • Found it helpful? Give it a star!

📬 Connect

About

☕ A collection of core Java programs covering OOPs, DSA, patterns, and more. Perfect for beginners, students, and anyone brushing up on Java basics.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •