Using this programming paradigm, programmers use classes to define objects in order to model the problem to be solved. Object-oriented programming (OOP) involves modular design, which makes it easy for teams of developers to work together.
The four main principles of the OOP paradigm are encapsulation, abstraction, inheritance, and polymorphism.
Encapsulation - The state of an object is private, and other objects can only interact with the object's public methods.
Abstraction - The complexities of how the object works are hidden.
Inheritance - Subclasses can inherit properties and methods from one or more parent classes.
Polymorphism - The ability of an object to take on many different forms; specifically for a method with the same name to have many different implementations.