帮忙看段代码

来源:百度知道 编辑:UC知道 时间:2024/05/29 02:10:21
Canvas mycanvas = new Canvas(){
public void paint (Graphics g) {
g.setColor(Color.orange);
g.fillOval(12,12,45,45);
}
};
改成以下代码 ,为什么不行?
Canvas(){
public void paint (Graphics g) {
g.setColor(Color.orange);
g.fillOval(12,12,45,45);
}
};
Canvas mycanvas = new Canvas();
原代码如下
import java.awt.*;
import java.awt.event.*;
class window extends Frame {
window() {
int x,y,z;
int red,gree,blue;
Canvas mycanvas = new Canvas(){ //就是在这里进行了修改
public void paint (Graphics g) {
g.setColor(Color.orange);
g.fillOval(12,12,45,45);
}
};
mycanvas.setSize(100,100);
mycanvas.setBackground (Color.cyan);
setLayout(new FlowLayout ());
add (mycanvas);
setBounds(120,125,580,300);
setVisible (true);
validate();
}
}

刚刚看错了,以为这是你自己的类,是API的类的话就不能这样改了,试下下面的:
import java.awt.*;
import java.awt.event.*;

class window extends Frame {
window() {
int x,y,z;
int red,gree,blue;
MyCanvas mycanvas = new MyCanvas();
mycanvas.setSize(100,100);
mycanvas.setBackground (Color.cyan);
setLayout(new FlowLayout ());
add (mycanvas);
setBounds(120,125,580,300);
setVisible (true);
validate();
}

class MyCanvas extends Canvas{
public void paint (Graphics g) {
g.setColor(Color.orange);
g.fillOval(12,12,45,45);
}
}
}

public class yellow6 {
public static void main(String args[]) {
new window();
}
}