抽象类和接口的区别? (*面试题) A:成员区别 抽象类: 成员变量:可以是变量,也可以是常量。 构造方法:有。 成员方法:有,可以是抽象的,也可以是非抽象的。 接口: 成员变量:只能是常量。默认修饰符:public static final 构造方法:没有,子类数据的初始化默认走的是Ojbect类的构造方法。 成员方法:只能是抽象的,默认修饰符是:public abstract B:类与接口的关系区别 类与类: 继承关系,单继承。 类与接口: 实现关系,单实现、多实现。 接口与接口: 继承关系,单继承、多继承。 C:设计理念的区别 抽象类被继承体现的是:is a的关系。抽象类中一般定义的是整个继承结构的共性功能。 接口被实现体现的是:like a的关系。接口中一般定义的是整个继承结构的扩展功能。
|