我们能否用一个 Java 中抽象类的具参构造法定义?


,我们可以在一个抽象类中定义一个具参构造法。

在抽象类中定义具参构造法的条件

  • 我们需要确保扩展抽象类的类拥有一个构造法,而且它可以调用超类的具参构造法。
  • 我们可以使用 super() 调用在子类的构造法中调用超类的具参构造法。
  • 如果我们没有在子类的构造法中放置 super() 调用,就会发生编译时错误

示例

实时演示

abstract class AbstractClassTest {
   AbstractClassTest(int a) { // Parameterized Constructor
      System.out.println("Parameterized Constructor of an abstract class a="+ x);
   }
}
public class Test extends AbstractDemo {
   Test() {
      super(20);
      System.out.println("Test Class Constructor");
   }
   public static void main(String[] args) {
      Test obj = new Test();
   }
}

在上面的示例中,我们必须在子类构造法 (Test) 中放置一个 super() 调用,否则会发生编译时错误。

输出

Parameterized Constructor of an abstract class a=20
Test Class Constructor

更新于: 30-Jul-2019

4K+ 浏览

开启你的 职业生涯

完成课程,获得认证

立即开始
广告
© . All rights reserved.