封装,继承,多态

封装

就是利用一些抽象数据结构把数据和基于数据的操作封装成一个“黑盒子”,用户使用时不需要关注具体实现

直接使用就好了

继承

就是用来表示is-a的关系,比如父类是动物,子类是猫,就是用来表示这种关系。子类有着父类的全部属性和

方法。如果子类新增方法,那就是is-like-a关系

多态

同一方法在不同对象上有不同表现

多态的话我觉得就只在运行时才具有,如重写

即对象引用指向的具体类型只有在运行时才会被确定下来

要想实现多态就得满足以下条件

1.有接口实现or类继承

2.子类重写父类的方法

3.父类的引用指向子类的对象

组合

has-a关系,一个类的成员变量是其他类的对象

组合更适合面向接口开发,而且更加简单和灵活,相对于继承,能用组合就用组合

继承得有明确的is-a关系