4 major princple
Inheritance
Example: Child class extends from Parent class and implement Interface
Encapsulation
Wrapping up of data and methods into a single unit is Encapsulation. In a class we combine data(variables ) and method that are operated on that data. (e.g. Class)
Abstraction
It is an act of representing only the essential things without including background details. Like we are providing only method declaration in interface not method body (e.g. Interface)
Polymorphism
Example method have same name but do different thing (eg: Override and overload method)
## Reference https://www.quora.com/What-is-the-exact-difference-between-abstraction-encapsulation-and-information-hiding-in-OOP-object-oriented-programming https://stackoverflow.com/questions/24626/abstraction-vs-information-hiding-vs-encapsulation