题目来源:https://zhuanlan.zhihu.com/p/86536581
java面试清单
**java基础 **
接口和抽象类
接口
更多的体现为一种行为约束,一种规则,一旦实现了这个接口,就要给出这个接口中所有方法的具体实现。也就是说实现类对于接口中所有的方法都是有意义的
抽象类
是对事物进行抽象,更多是为了继承,为了扩展,为了实现代码的重用,子类和父类的关系是”是不是”关系
为什么说一旦修改接口或者抽象类,势必会惊扰使用者
抽象类而言:当一个子类继承自抽象类时,需要在子类内部实现抽象方法。倘若不实现,该子类也会自动称为抽象类
接口而言:当一个类一旦是些某一个接口时,必须要在子类内部实现抽象方法。
因此,一旦修改接口或者抽象类,就会引起改变
接口和抽象类语法层面上的区别
1 抽象类=成员方法+抽象方法
接口= 抽象方法
2 抽象类的成员变量可是各种类型
接口的成员变量只能是 pulic staic final
3 抽象类可以有静态代码块和静态方法
接口都不可以有
4 一个类只能继承一个抽象类
一个类可以实现多个接口
版权声明:本文为xiaowo123456原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。