Java抽象类与接口的区别?

   抽象类:java

(1)用abstract关键字修饰,没法实例化继承

(2)可含有具体的方法实现接口

(3)抽象方法用(protected,public)(若是private 没法被子类继承)变量

(4)继承抽象类的子类,不实现父类的抽象方法,也必须定义为抽象类方法

接口:数据

(1)全部方法必须为抽象方法static

(2)能够含有变量(接口变量被隐式指定为public static final)实例化

区别:interface

 (1)java类能够一次继承关系,多个interface实现ab

(2)abstract中能够含有数据成员,非abstract的方法。而interface,变量(public static final),方法(public abstract)

(3)interface的变量必须给初值

(4)abstract可含有static方法,interface不能有这个

(5)abstract和interface在继承过程,不实现abstract方法是,子类与父类性质不变

相关文章
相关标签/搜索