从派生类调用构造函数

use*_*114 0 java oop inheritance constructor compiler-errors

您好我一直在尝试使用我的zeroparameter构造函数调用我的SunkenObject构造函数与初始权重值但由于某种原因我不断收到此错误

constructorSunkenObject in classSunkenObject不能be applied to given types;`

required: float
  found: no arguments
  reason: actual and formal argument lists differ in length
Run Code Online (Sandbox Code Playgroud)

这是我的SunkenObject构造函数:

public abstract class SunkenObject extends CatchableThing
{
   protected float weight;

   public SunkenObject(float w)
   {
     weight = w;
   }

  public float getWeight() { return weight; }

    public String toString () 
    {
        return (getClass().getSimpleName());
    }
}
Run Code Online (Sandbox Code Playgroud)

这是SunkenObject扩展的对象之一(生锈的链)

public class RustyChain extends SunkenObject 
{

    public RustyChain (float w)
  {
    super(w);  
  }
   public RustyChain()
   {
     weight = 8.0f;
   }


}
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我我做错了什么,因为从我的角度来看,代码没有任何问题.谢谢!

Roh*_*ain 7

你的意思是这样的:

public RustyChain() {
    super(8.0f);
}
Run Code Online (Sandbox Code Playgroud)

weight = 8.0f 不会调用超类构造函数.