面向对象的三个基本特征是:封装、继承、多态。
There is no formal definition of object-oriented programming. Hence there is some confusion surrounding what features a programming language must support in order to claim that it is object-oriented. Despite this, however, most agree that in order for a language to claim that it is object-oriented, it must provide support for three major concepts, as inferred from Booch's definition.
- Data encapsulation or data abstraction
- Inheritance or derivation
- Dynamic or runtime binding polymorphism