学习Java基础知识,打通面试关~十三接口与抽象类
面试常客:谈谈你对抽象类和接口的理解
接口用interface修饰
- 接口可以多实现,而抽象类只能单继承
- 接口中的变量总是被隐式指定为public static final 变量。 并且方法也是被隐式的定义为public abstract。接口中的方法必须都是抽象方法。
- 实现接口的非抽象类必须实现接口中所有的方法,抽象类可以不用全部实现
-完全解耦
抽象类用abstract修饰
- 抽象方法必须为 public 或者 protected(因为如果为 private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为 public
- 如果一个类继承于一个抽象类,则子类必须实现父类的抽象方法,如果子类没有实现父类的抽象方法,则必须将子类也定义为抽象类
网友评论