哪位大神详细讲一下接口与抽象类的区别和各自的优缺点
哪位大神详细讲一下接口与抽象类的区别和各自的优缺点 |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
说实话这个问题我已经回答了很多遍了,回答的我都想吐了,那么我就谈谈接口和抽象类的区别。接口和抽象类的共同点就是它们都可以包含抽象方法,并且它们都不可以创建对象不同的之处就多了。抽象类除了可以包含抽象方法外还可以实体方法,用来给子类去继承,抽象类还可以包含静态成员 和非静态成员。而接口中的方法全都是非静态的并且全都是被public abstract 修饰的,接口中的变量全都是被public static final 修饰的 ,也就是说接口中的变量全都是常量,接口中不能包含静态方法。接口不能有构造函数而抽象类却可以。 另外从从继承的角度上说,类于类之间是单继承,接口与接口之间确实多继承,从某种角度上说,也弥补了java单继承的不足。 |
|
|
|
|
借口是一些事物的共通点,比如一些基本的方法,利于增删查改,抽象类是对象的共有特征多态化实现方式,通过继承可以向上引用。 |
|
|
|
|
接口是一系列还未实现的方法的集合,而抽象类可以包含实现的方法和属性,也就是说抽象类的约束多 |
|
|
|
|