【Java】abstract 关键字不能和哪些关键字共存

  • private ——冲突——abstract 的方法必须被子类重写,而 private 不能被继承
  • final——冲突——final 修饰的方法,变量都不能修改,而abstract 修饰的方法必须被重写
  • static——不能共从——无意义,static 是静态的,abstract 方法中无方法体,无法调用

 示例代码:

AnimalParent.java

package com.面向对象.Demo27;

public abstract class AnimalParent {
    /**
     * 1. 我们的abstract关键字 不能够和 private
     * ∵ 如果抽象方法 改为 private 该方法是无法 被继承 无法被重写
     * 2. final 加在类上,意味着类是不能被继承 加在方法上 该方法是无法被重写
     * 3. static 该方法是静态方法,可以直接通过"类名.方法" 访问 方法体
     *      而抽象方法是没有方法体 具体实现 交给 父类
     */
//    private abstract void eat();       //abstract
//    public final abstract void eat();  //final
//    public static abstract void eat(); //static
    public abstract void eat();
}

下一篇文章:接口 interface

你可能感兴趣的:(java,开发语言,final,static,abstract,抽象类)