面向对象-抽象类abstract

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-25 23:44:29

父类当中的方法不确定如何进行{}方法体实现,
那么这就应该是一个抽象方法

抽象方法:就是加上关键字abstract,去掉大括号,直接分号结束
抽象方法没有方法体

  • 抽象类:抽象方法所在的类必须是抽象类,class前加abstract

如何使用抽象类和抽象方法

  • 1.不能直接创建抽象类对象
  • 2.必须用一个子类来继承抽象类
  • 3.子类必须覆盖重写抽象父类当中所有的抽象方法
  • 4.创建子类对象,进行使用
//这是一个抽象动物父类
public abstract class Animal {

    //抽象方法,没有方法体
    public abstract void eat();
    
}

//子类继承父类
public class Cat extends Animal {
    //覆盖重写父类中的抽象方法
    public void eat(){
        System.out.println("猫吃鱼");
    }
}

抽象类使用的注意事项:

  • 1.抽象类不能创建对象,只能创建其非抽象的子类对象
  • 2.抽象类中,可以有构造方法,是供子类创建对象时,初始化父类成员使用的
  • 3.抽象类中,不一定包含抽象方法,但是有抽象方法的类必定是抽象类
  • 4.抽象类的子类,必须重写抽象父类所有的抽象方法,否则无法编译,除非该子类也是抽象类
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!