答:接口可以继承接口,抽象类不可以继承接口,但可以实现接口
答:抽象类可以继承实体类,这是因为抽象类可继承性且有方法。
抽象类是否可继承实体类,取决于实体类必须是否有明确的构造函数。
一个接口可以继承多个接口. interface C extends A, B {}是可以的;
一个类可以实现多个接口: class D implements A,B,C{},但是一个类只能继承一个类,不能继承多个类 class B extends A{}
在继承类的同时,也可以实现多个接口: class E extends D implements A,B,C{} 这也正是选择用接口而不是抽象类的原因。
//定义一个接口
public interface Inter {
void show(); //抽象方法
default void method() { //默认方法,必须写方法体
System.out.println("默认方法被实现了"); }
static void test(){ //静态方法,必须写方法体
System.out.println("静态方法被实现了"); }
}
//定义接口的一个实现类
public class Interlmpl implements Inter {
@Override
public void show() {
System.out.println("show方法"); }
}
//定义测试类
public class InterDemo {
public static void main(String[] args) {
Inter i = new Interlmpl();
i.show(); //抽象方法强制被重写
i.method(); //默认方法不强制被重写,但可以被重写,重写时去掉default关键字
Inter.test(); //静态方法只能通过接口名调用,不能通过实现类名或者对象名调用
}
}
https://blog.csdn.net/GEGEGEHUI/article/details/123245556