Java中没有抽象方法的抽象类的存在意义

Posted sunrainlyb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中没有抽象方法的抽象类的存在意义相关的知识,希望对你有一定的参考价值。

含有抽象方法的类一定是抽象类,但是抽象类不一定含有抽象方法。

 

总结:

没有抽象方法的抽象类的作用:

1.抽象类不能new实例化

2.抽象类可以有构造方法,但是构造方法不能是抽象方法

3.通过子类继承,可以调用抽象类的构造方法

 

无抽象方法的抽象类 案例:

1.    装饰器模式(the decorator pattern)

2.      HttpServlet

它的所有方法, 作为默认实现的方法,都是非抽象的, 但它本身却带上abstract 的标志。这么作,就可以让它的子类,各取所需,仅覆盖它们需要用到的方法就可以了。

3.    Java api 中的 适配类 如,抽象类 MouseAdapter,MouseMotionAdapter, 它们以空代码块{ } 实现了相关接口的所有抽象方法。但刻意冠以 抽象 abstract “头衔”。因此, 它必须有子类,才能运作,但子类可以自取所需,仅覆盖它们要用到的方法就可以了, 起到便捷的作用。

以上是关于Java中没有抽象方法的抽象类的存在意义的主要内容,如果未能解决你的问题,请参考以下文章

抽象类

抽象类

抽象类,接口_05

抽象类的存在意义是什么?

抽象类存在的意义和作用

Java重点 | 抽象