爪哇 Java8 2021-08-15 抽象类和接口的异同? 抽象类:含有 abstract 修饰符的 class 就算 抽象类;它既可以有抽象方法,也可以有 普通 方法,构造方法,静态方法,但是不能有抽象构造方法 和 抽象静态方法。且如果其子类没有实现 其所有的 抽象方法,那么该 子类 也必须是 抽象类; 接口:他可以看成是 抽象类的 一个特例,使用 interface 修饰符; 内部结构: jdk7:接口只有常量和抽象方法,无构造器 jdk8:接口增加了 默认方法 和 静态方法,无构造器 jdk9:接口允许 以 private 修饰的方法,无构造器 共同点: 不能实例化; 多态方式的一种使用; 不同点: 抽象类是单继承的,而接口可以多继承(实现);