abstract不能与final、static、private同时使用
1、abstract
abstract修饰的类为抽象类,此类必须被继承使用;abstract修饰的方法为抽象方法,此方法以分号结束,且不含方法体,必须被子类覆盖。
2、final
final修饰的类无法被继承,而抽象类必须被继承使用;final修饰的方法是不允许被子类覆盖的,而抽象方法必须被子类覆盖,所以final不能与abstract同时使用。
3、static
static修饰的方法叫静态方法,该方法依赖于类,随着类的加载而加载,就算没有new一个对象,类方法还是存在,所以静态方法可以用 “类名.方法” 的形式直接调用,但是抽象方法是还未被定义的方法,抽象方法必须被子类覆盖来定义,所以抽象方法随着类加载并没有意义。
4、private
private修饰的方法是该类私有的方法,不能被子类继承,所以不能被子类覆盖,这与抽象方法必须被子类覆盖矛盾,所以abstract不能与private同时使用