修饰符(public&protect&default&private)、接口,抽象类

[TOC]

修饰符

使用选择

使用接口:
1.需要让不相关的类都实现一个方法,例如不相关的类都可以实现 Compareable 接口中的 compareTo() 方法;
2.需要使用多重继承。
使用抽象类:
1.需要在几个相关的类中共享代码。
2.需要能控制继承来的成员的访问权限,而不是都为 public。
3.需要继承非静态和非常量字段。
在很多情况下,接口优先于抽象类。因为接口没有抽象类严格的类层次结构要求,可以灵活地为一个类添加行为。并
且从 Java 8 开始,接口也可以有默认的方法实现,使得修改接口的成本也变的很低