为什么Java中的抽象类有构造函数?

为什么Java中的抽象类有构造函数?,java,abstract-class,default-constructor,Java,Abstract Class,Default Constructor,我知道扩展抽象类的具体类可以从构造函数中获益,从而节省一些代码,但我仍然觉得奇怪的是,您可以有一个不能用于实例化相应类的构造函数 构造函数不用于对象创建。它的目的是什么 初始化。可以初始化子类 对象通过抽象类构造函数 因为最终的具体类可能希望通过委托给一个超类构造函数来保存一些代码。或者抽象类的作者可能希望通过强制子类显式调用已定义的超类构造函数来要求子类在使用它时遵循某种模式。

我知道扩展抽象类的具体类可以从构造函数中获益,从而节省一些代码,但我仍然觉得奇怪的是,您可以有一个不能用于实例化相应类的构造函数

构造函数不用于对象创建。它的目的是什么 初始化。可以初始化子类 对象通过抽象类构造函数


因为最终的具体类可能希望通过委托给一个超类构造函数来保存一些代码。或者抽象类的作者可能希望通过强制子类显式调用已定义的超类构造函数来要求子类在使用它时遵循某种模式。