Java基础_抽象类

来源:互联网 发布:淘宝无需物流怎么修改 编辑:程序博客网 时间:2024/06/12 19:09

在继承结构中向根的方向移动的时候,类会变得越来越常规。父类变得如此常规,以至于可以把它想象成其他类的一个框架,而不是提供了想使用的特殊实例的一个类。

抽象类中不一定包含抽象方法,但包含了抽象方法的类一定要被声明为抽象类。抽象类就是用来被继承的。

抽象类不能被实例化,只能通过创建继承了抽象类的子类,来创建子类的对象。并且子类不能是抽象类。若子类也是抽象类,则还是不能创建它的实例。

即使抽象类中无抽象方法,也需要被继承后才能创建其子类的实例。

对于一个女士养宠物的那个例子,显然Animal类中的enjoy方法的方法体是没有必要存在的,这个时候就可以将其修改为一个抽象类。

abstract class Animal {
    String name;
    Animal(String name){
        this.name = name;
    }
    abstract void enjoy();
}