抽象类与接口
抽象类和接口的区别:
A:成员区别
抽象类: 接口:
成员变量:可以是变量,也可以是常量 成员变量:只可以常量
构造方法:有
成员方法:可以抽象,也可以非抽象 成员方法:只可以抽象
B:关系区别
抽象类可以继承抽象类:单继承
类可以实现接口:单实现,多实现
接口可以继承接口:单继承,多继承
C:设计理念区别
抽象类 被继承体现的是:”is a”的关系。抽象类中定义的是该继承体系的共性功能。
接口 被实现体现的是:”like a”的关系。接口中定义的是该继承体系的扩展功能。
总结:
不同的类可以实现相同的接口,同一个类也可以实现多个接口
接口和抽象类都不能实例化
Action speaks louder than words!