gpt4 book ai didi

java - 子类的参数可以比它的子类少吗?

转载 作者:行者123 更新时间:2023-12-01 14:39:12 25 4
gpt4 key购买 nike

我目前的任务是用 Java 编辑小行星游戏的代码。主类已经完成,但是我必须完成主类控制的游戏中交互的对象的类。在游戏的API中,父类(super class)SpaceObject的构造函数是这样写的:

public SpaceObject(double xPos, double yPos, double xVel, double yVel, double radius){
setXPosition(xPos);
setYPosition(yPos);
setXVelocity(xVel);
setYVelocity(yVel);
setRadius(radius);
}

其子类 Comet 概述为:

Comet(double xPos, double yPos, double xVel, double yVel, double radius){
super(xPos, yPos, xVel, yVel, radius);
}

最后,问题子类 LargeComet 概述为:

LargeComet(double xPos, double yPos, double xVel, double yVel){
super(xPos, yPos, xVel, yVel);
}

LargeComet 的半径应为 40(该 int 的静态变量位于父类(super class) SpaceObject 中)。

我似乎收到一个错误,但参数不匹配。我不能在子类 LargeComet 的构造函数中拥有 5 个参数值,因为这样我会在使用 4 个参数引用它的主类中收到错误(并且我不应该更改那里的主类代码)。我是否忘记了关于显式调用父类(super class)构造函数的一些事情?

最佳答案

您需要使用 super() 所需的参数(其中 5 个)来调用。如果一个是静态的,则为它提供静态值而不是参数。对于父类接受 3 个参数的类,它看起来像这样。

MyClass(int arg1, int arg2)
{
super(arg1,arg2,5);
}

关于java - 子类的参数可以比它的子类少吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16159912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com