On OOP Principles
According to the principles of object-oriented programming, all OOP languages have three traits in common: encapsulation, polymorphism, and inheritance.
This declaration is typical in discussion of OOP’s main principles or concepts. Encapsulation, polymorphism, and inheritance have been cited as the “big three” as commonly as any. In Wikipedia’s excellent article on OOP, one section is devoted to the foolishness of picking any three characteristics of OOP in this manner (and ...