java 继承和接口的区别
本质区别
- 继承 更多说明的是类的本质 可以理解成主语
- 接口 更多说明了类的能力 可以理解成定语
举例说明
- 那边有个男人 这个男人就属于继承人类的一个对象
-
public class ManPerson extends Person{ public void doManThings(){ // 做男人能做的事情 } public ManPerson() { System.out.println("我是男人"); setGender("MAN"); } }
- 那边有个会开车的男人 这个会开车(DriveCar)就属于一个接口
-
public class ManPerson extends Person implements DriveCar{ public void doManThings(){ // 做男人能做的事情 } public ManPerson() { System.out.println("我是男人"); setGender("MAN"); } @Override public void driveCar() { //实现开车接口 System.out.println("我在开车"); } }
总结
- 继承的作用
- 表明 对象的对于哪一类 显示对象的本质 比如 男人女人都属于人类
- 表明 对象和其他同类的不同 做更精细的划分 比如 美国男人 中国男人的国籍不同
- 接口的作用
- 表明 对象的能力特征 比如 可以爬树 可以游泳 可以飞