需求:描述一个动物、狗、鸟三个类。 动物、狗、鸟run
问题:
1. 动物类的run方法描述得有问题。
2. 没有强制子类一定要重写run方法。
抽象类的应用场景:
描述一类事物的时候,发现该事物确实存在着某种行为,但是目前该行为是不具体的,那么这时候我们应该抽取该方法的声明,不去实现该方法,这时候我们应该使用抽象类。
抽象类要注意的细节:
1. 如果一个方法没有方法体,那么该方法必须使用abstract修饰。
2. 如果一个类有抽象的方法,那么该类也必须使用abstract修饰。
3. 非抽象类继承抽象类的时候,必须要把抽象类中的所有抽象方法全部实现。
4. 抽象类可以定义抽象方法以及非抽象方法。
5. 抽象类是可以不存在抽象方法的。
6. 抽象类不能创建对象。
疑问: 为什么抽象类不能创建对象呢?
因为抽象类一旦创建了对象就可以使用对象去调用方法了,一旦调用了抽象方法就没有任何的意义了。
7. 抽象类是存在构造方法的。
疑问:既然抽象类不能创建对象,那么存在构造方法的意义在那?
------抽象类的构造方法是留给子类调用初始化从父类继续下去的成员变量的。

本文通过动物、狗、鸟的例子介绍了抽象类在Java中的应用,强调了抽象类用于描述共同行为但未具体实现的方法。同时,讨论了抽象类的特性,如不能实例化、子类必须实现抽象方法等。还展示了图形、矩形和圆形的抽象类设计,以计算不同图形的面积和周长。文章最后提到了抽象类不能与private、final和static关键字配合使用的限制。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



