一些混淆点
也不算是心血来潮吧,有一些知识点总是自己有时候会忘,主要目的是为了准备一下晋升笔试啦23333
抽象类和接口
-
抽象类与接口都不能被实例化。
-
抽象类中的抽象方法必须全部被子类所实现,如子类不实现父类所有抽象方法则子类必须为抽象类。
-
JDK1.8以前一个类实现接口的时候,如不能全部实现接口方法,那么该类只能为抽象类。
-
JDK8及以后,允许我们在接口中定义static方法和default方法。实现类不需对static与default方法进行实现。
public interface TestInterface {
// static修饰符定义静态方法
static void staticMethod() {
System.out.println("123");
}
// default修饰符定义默认方法
default void defaultMethod() {
System.out.println("123");
}
}
-
抽象类可以有具体的方法和属性,接口只能有抽象方法和不可变常量。
-
抽象类可以有构造器,接口不能有构造器。