Java抽象类可以有构造函数吗?

抽象类可以有构造函数吗?

如果是这样,它将如何使用以及用于什么目的?

回答:

是的,抽象类可以具有构造函数。考虑一下:

abstract class Product { 

int multiplyBy;

public Product( int multiplyBy ) {

this.multiplyBy = multiplyBy;

}

public int mutiply(int val) {

return multiplyBy * val;

}

}

class TimesTwo extends Product {

public TimesTwo() {

super(2);

}

}

class TimesWhat extends Product {

public TimesWhat(int what) {

super(what);

}

}

超类Product是抽象的,并且具有构造函数。具体的类TimesTwo具有仅对值2进行硬编码的构造函数。具体的类TimesWhat具有允许调用者指定值的构造函数。

抽象构造函数将经常用于强制类约束或不变量,例如设置类所需的最小字段。

以上是 Java抽象类可以有构造函数吗? 的全部内容, 来源链接: utcz.com/qa/427055.html

回到顶部