Skip to content

A collection of Java programs demonstrating core Object-Oriented Programming (OOP) concepts including classes, objects, constructors, inheritance, polymorphism, encapsulation, abstraction, static/final keywords, and inner classes. Ideal for learning and practicing Java OOP step by step.

License

Nishchal-ll/JavaLearning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Java Intermediate Course — OOP (Object-Oriented Programming)

This repository contains Java programs demonstrating Object-Oriented Programming (OOP) concepts, with a focus on inner classes and basic inheritance examples.


🧱 What is OOP?

Object-Oriented Programming helps you build programs using real-world concepts like Car, Student, BankAccount, etc.
Key OOP concepts included in this repository:

  1. Class & Object

    • A class is a blueprint.
    • An object is a real instance created from that blueprint.
  2. Constructors

    • Constructors initialize object values automatically when an object is created.
  3. The this Keyword

    • Refers to the current object.
  4. Inheritance

    • Allows one class to use properties and methods of another class.
  5. Polymorphism

    • Many forms — the same method name behaves differently depending on context.
  6. Encapsulation

    • Keeps data safe using private variables with getters and setters.
  7. Abstraction

    • Hides complex implementation details and shows only the essentials.
  8. Static Keyword

    • Belongs to the class, not to any object.
  9. Final Keyword

    • Prevents changes to variables, methods, or classes.
  10. Inner Classes

    • Classes defined inside other classes.
    • Useful for logically grouping classes that are only used in one place.

🧠 Advanced Java Concepts

  1. Exception Handling

    • Allows programs to handle runtime errors gracefully using try, catch, and finally.
  2. File Handling

    • Enables reading from and writing to files for data storage and retrieval.
  3. Collections Framework

    • Provides dynamic data structures like ArrayList, HashMap, and HashSet for managing data.
  4. Multithreading

    • Lets multiple parts of a program run concurrently to improve performance.
  5. Lambda Expressions

    • Offers a shorter way to define methods or functions inline for cleaner code.
  6. Streams API

    • Simplifies processing of collections using functional operations like filter, map, and collect.
  7. Generics

    • Allows writing reusable and type-safe code that works with any data type.
  8. Serialization

    • Converts objects into a byte stream to save or transfer them, and restores them later.

About

A collection of Java programs demonstrating core Object-Oriented Programming (OOP) concepts including classes, objects, constructors, inheritance, polymorphism, encapsulation, abstraction, static/final keywords, and inner classes. Ideal for learning and practicing Java OOP step by step.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages