Object-oriented programming (OOP) is a programming model that organizes software design around data or objects. It is opposite to functional programming which has functions as primary candidates or building blocks of the application design.
An object generally represents a real-life entity/actor in the application that has unique attributes and behavior. The application code focuses on creating, modifying and purging these objects as part of the application design, rather than focusing on how these manipulations will be done. OOP helps in mirroring the real-life problems closer to the application.
1. Building Blocks of OOP
These concepts are the building blocks and pillars for object-oriented programming.
- Intro to Object Oriented Programming
- Association, Aggregation and Composition
- Guide to Abstraction
- Guide to Inheritance
- Guide to Polymorphism
- Multiple Inheritance in Java
2. OOP in Java
The given articles describe how Java supports OOP paradigm.
- Constructors in Java
- Java Access Modifiers
- Java static
- Java final
- Java Instance Initializer Blocks
- Java Instanceof Operator
- Instances of same class can access private members of each other
- Overriding final static method in Java
3. Difference Between
Go through the differences between some very similar concepts to understand them even better,
- Overloading vs Overriding in Java
- Encapsulation vs Abstraction in Java
- Interface vs Abstract Class in Java
- Java extends vs implements Keywords
Happy Learning !!