从我在其他人的代码中看到的,似乎有两种方法可以创建一个对象并"准备"使用它.
方法1:准备构造函数中的对象:
public class SomeClass {
int setting;
public SomeClass(int setting) {
this.setting = setting;
}
}
Run Code Online (Sandbox Code Playgroud)
方法2:创建对象然后在初始化方法中"准备好"它,例如:
public class SomeClass {
int setting;
public SomeClass(int setting) {
}
public void init(int setting) {
this.setting = setting;
}
}
Run Code Online (Sandbox Code Playgroud)
是否有任何具体的理由使用这两种方法?
我试图在同一个窗口上绘制多个汽车对象,但看起来它们正在相互覆盖.
这是我在Car类中重写的paintComponent方法
public void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
g2.setColor(wheelColor);
g2.fill(leftWheel);
g2.fill(rightWheel);
g2.setColor(bodyColor);
g2.fill(body);
g2.fill(cab);
}
Run Code Online (Sandbox Code Playgroud)
在我的Viewer类中:
JFrame f = new JFrame();
initializeFrame(f);
Car x = new Car(100, 100);
Car y = new Car(300, 300);
f.add(x);
f.add(y);
Run Code Online (Sandbox Code Playgroud)
虽然坐标似乎不同,但只绘制了最后一辆车.
有什么建议?谢谢