为什么子类的构造函数会引发错误?

时间:2018-01-12 23:11:43

标签: java

这是我的代码:

Core Image

请帮助我理解为什么我收到以下错误的错误:

构造函数super from class super不能应用于给定的类型 required:int,int,int 发现:没有争论 原因:实际和正式的参数列表长度不同

2 个答案:

答案 0 :(得分:0)

你有几个问题。

  1. super()构造函数(即超类构造函数)的开头有一个对sub的隐式调用。由于您没有在Superr中提供不带参数的构造函数,因此会导致错误消息。要防止出现错误,您必须在Superr中提供不带参数的构造函数,或者调用现有的三参数构造函数,如:

     Sub(int a, int b, int c, int d) {
         super(a,b,c);
         l = d;
      }
    
  2. 您没有在任何地方声明ef,因此会导致另一种语法错误。

  3. 将来,为避免混淆,请不要致电您的班级SuperrSub。我们可以处理AB extends A就好了。

答案 1 :(得分:-1)

super 是一个不能用于类名的关键字。