PHP: The 3 Pillars of OOP

Object-Oriented Programming (OOP) is a programming paradigm that is centered around the principle of objects. Objects are instances of classes, which are templates that define the properties and methods that an object can have. OOP is based on three main pillars: EncapsulationInheritance, and Polymorphism.


Encapsulation is the principle of hiding the internal workings of an object and exposing only what is necessary for other objects to use it. This is achieved by making the object’s properties and methods private, and providing public interfaces to access them. The idea behind encapsulation is to prevent external objects from accessing the internal state of an object directly, ensuring that the object’s integrity is maintained.


Inheritance is the process of creating new classes from existing ones. Through inheritance, a child class can inherit all the properties and methods of its parent class, and can also add new properties and methods of its own. Inheritance is useful for creating hierarchies of classes that share common properties and behavior, and allows for code reuse, making it easier to maintain and update code over time.


Polymorphism is the ability of objects of different types to be treated as if they were of the same type. This is achieved through inheritance and interfaces, which allow objects to be used interchangeably, regardless of their specific type. Polymorphism is useful for creating flexible and extensible code, as it allows for the creation of code that can work with a wide range of objects, without the need for explicit type checking.

In conclusion, OOP is a powerful programming paradigm that is based on the three pillars of Encapsulation, Inheritance, and Polymorphism. By using these principles, developers can create flexible and maintainable code that can be easily extended and reused over time.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Up ↑

%d bloggers like this: