【发布时间】:2019-03-05 19:17:58
【问题描述】:
- 什么是 f.add(new MyCanvas()) 中的“new MyCanvas()”;
- 即使在 CanvasExample 类构造函数或 main() 方法中都没有调用 paint() 方法,我们如何获得椭圆形
- main() 方法中的新 CanvasExample() 是什么
import java.awt.*;
public class CanvasExample {
public CanvasExample() {
Frame f = new Frame("Canvas Example");
f.add(new MyCanvas());
f.setLayout(null);
f.setSize(400, 400);
f.setVisible(true);
}
public static void main(String args[]) {
new CanvasExample();
}
}
class MyCanvas extends Canvas {
public MyCanvas() {
setBackground (Color.GRAY);
setSize(300, 200);
}
public void paint(Graphics g){
g.setColor(Color.red);
g.fillOval(75, 75, 150, 75);
}
}
请解释
【问题讨论】:
-
new用于在 java 中创建类的对象。paint()看起来像一个回调。谷歌这些术语以了解更多信息。 -
@NicholasK 谢谢....我会这样做的。
标签: java object canvas components awt