Skip to content

Java-Learning is a personal repository by Kratu Gautam chronicling the journey of learning core Java concepts for applications in data structures, algorithms, and app development. Structured under the src/Kratu/company directory, it contains organized Java programs and project scaffolding alongside notes and documentation.

Notifications You must be signed in to change notification settings

Kratugautam99/Java-Learning

Repository files navigation

☕ Java-Learning

A hands-on journey through Java fundamentals, Data Structures & Algorithms, and real-world app development.


📖 Table of Contents


✨ What’s Inside

Java-Learning is my personal codebase for mastering core Java concepts—from object-oriented principles to algorithmic problem solving and app scaffolding. Each module lives alongside samples and exercises so you can follow the same learning path, experiment with code, and build confidence.


🛠️ Features & Topics Covered

  • ☝️ Core Java: Syntax, OOP pillars (Encapsulation, Inheritance, Polymorphism, Abstraction), exceptions
  • 🔄 Data Structures & Algorithms: Arrays, Lists, Stacks, Queues, Trees, Graphs, Sorting & Searching
  • 🏗️ Design Patterns: Singleton, Factory, Observer, Strategy
  • 🌐 App Foundations: Project scaffolding, package organization, build scripts
  • 🧩 Hands-On Exercises: Leetcode-style challenges with runnable code
  • 📚 Documentation: Inline comments, design notes, and conceptual write-ups

📂 Project Structure

Java-Learning/
├── .idea/                            # IntelliJ project configs
├── CustomDocs/                       # Design docs, diagrams & study guides
├── src/
│   └── Kratu/company/                # Core Java packages & classes
├── JavaLearning.iml                  # IDE module file
├── Java_Complete_Notes.7z            # Comprehensive offline notes archive
├── .gitignore                        # Files & folders to exclude from Git
└── README.md                         # This overview

🚀 Getting Started

Prerequisites

  • Java JDK 11 or higher
  • IntelliJ IDEA or Eclipse (optional)
  • Git (for cloning)

Clone & Open

git clone https://github.com/Kratugautam99/Java-Learning.git
cd Java-Learning
  • IntelliJ/Eclipse: Import the project as a Maven/Gradle module or open the existing .iml.
  • Command Line: Compile and run via javac/java (see below).

⚙️ Build & Run

Via IDE

  1. Open src/Kratu/company in your IDE.
  2. Right-click any *.java file with a main() method.
  3. Select Run to execute.

Via Command Line

# Compile all classes
javac -d out src/Kratu/company/**/*.java

# Run a specific program (example: Main)
java -cp out Kratu.company.Main

📝 Notes & Documentation

  • CustomDocs/ houses design diagrams, UML sketches, and deeper concept write-ups.
  • Java_Complete_Notes.7z contains my full set of study notes—extract locally to review them offline.

🤝 Contributing

Love Java, DSA, or have a pattern to share? Fork this repo, add your module or docs, and open a PR:

  1. Fork & clone
  2. Create a branch:
    git checkout -b feature/my-java-module
  3. Commit your changes:
    git commit -m "Add Graph traversal examples"
  4. Push & open a PR

Please follow our Code of Conduct.


📜 License

Distributed under the MIT License. See LICENSE for details.


Topics: java dsa algorithms data-structures object-oriented-design app-development educational-resources

About

Java-Learning is a personal repository by Kratu Gautam chronicling the journey of learning core Java concepts for applications in data structures, algorithms, and app development. Structured under the src/Kratu/company directory, it contains organized Java programs and project scaffolding alongside notes and documentation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published