Ans)
Object Oriented Programming or OOP is the technique to create programs based on the real world. Unlike procedural programming, here in the OOP programming model programs are organized around objects and data rather than actions and logic.
Objects represent some concepts or things and like any other objects in the real Objects in programming language have certain behavior, properties, type, and identity.
There are four main features of OOPS.
1) Encapsulation
2) Inheritance
3) Polymorphism
4) Abstraction
Encapsulation
Encapsulation means putting together all the variables (Objects) and the methods into a single unit called Class.
Inheritance
Inheritance is mainly used for code reusability. You already have defined an Object or rather you have already defined set of attributes and characteristics which you like to make you it again and expand up on it.
Polymorphism
Polymorphism advices to use common interface instead of concrete implementation while writing code. When we program for interface our code is capable of handling any new requirement or enhancement arise in near future due to new implementation of our common interface.
Abstraction :
Abstraction means Data hiding and control the accessibility , means to show only the necessary details to the client of the object.