gpt4 book ai didi

java - 您可以在创建构造函数时调用对象上的方法吗?

转载 作者:行者123 更新时间:2023-11-30 03:40:49 25 4
gpt4 key购买 nike

我创建了一个名为 Ball of GOval 的子类。我想创建一个黑球。为了使其工作,我尝试了以下方法:

在一个类中,我创建了一个新的 Ball 对象。

Ball ball = new Ball(0,0,200);

这会调用 Ball 中的构造函数(它扩展了 GOval)

public Ball(double xPos, double yPos, double diameter){
super(xPos, yPos, diameter, diameter);
}

我还想初始化颜色并设置此构造函数中填充的颜色。问题是这些是您在对象上调用的方法。例如,这有效:

Ball ball = new Ball(0,0,200);
ball.setFillColor(Color.BLACK)
add(playball);

但我真正想要的是在球类的构造中执行最后两条指令,如下所示:

public Ball(double xPos, double yPos, double diameter){
super(xPos, yPos, diameter, diameter);
setFillColor(Color.BLACK);
}

感谢您的回复:我可以使用它:

setFilled(true);
setColor(Color.BLACK);

这可能有效,因为我使用 super 调用 GOval 的构造函数,然后在该对象上调用这些方法(setFilled 和 setColor)?

最佳答案

既然fillColor是Ball类的一个属性,为什么不能直接设置它而不是调用方法

public Ball(double xPos, double yPos, double diameter){
super(xPos, yPos, diameter, diameter);
this.fillColor = Color.BLACK;
}

关于java - 您可以在创建构造函数时调用对象上的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26869101/

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