import java.awt.*;
import java.awt.event.*;
import java.util.*;
//import java.awt.Point;
public class A{
public static void main(String args[]) {
new MyFrame("drawing...");
}
}
class MyFrame extends Frame {
ArrayList points = null;
MyFrame(String s) {
super(s);
points = new ArrayList<Point>();
setLayout(null);
setBounds(300,300,400,300);
this.setBackground(new Color(204,204,255));
setVisible(true);
this.addMouseListener(new MyMonitor());
}
public void paint(Graphics g) {
Iterator i = points.iterator();
while(i.hasNext()){
Point p1 = (Point)i.next();
g.setColor(Color.BLUE);
g.drawRect(p1.x , p1.y, 10 , 10);
}
}
public void addPoint(Point p){
points.add(p);
}
}
class MyMonitor extends MouseAdapter {
public void mousePressed(MouseEvent e) {
MyFrame f = (MyFrame)e.getSource();
System.out.println(e.getX());
System.out.println(e.getY());
f.addPoint(new Point(e.getX(), e.getY()));
f.repaint();
}
}
---------------------------------------------------------
---------- javac ----------
A.java:28: x 可以在 Point 中访问 private
g.drawRect(p1.x , p1.y, 10 , 10);
^
A.java:28: y 可以在 Point 中访问 private
g.drawRect(p1.x , p1.y, 10 , 10);
^
A.java:40: 找不到符号
符号: 构造函数 Point(int,int)
位置: 类 Point
f.addPoint(new Point(e.getX(), e.getY()));
^
注意:A.java 使用了未经检查或不安全的操作。
注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。
3 错误输出完成 (耗时 7 秒) - 正常终止
既然导入了import java.awt.*;
肯定包含了import java.awt.Point;的我这边编译没有问题啊,应该是其他地方的问题。
很有可能程序找到了另一个名为Point的类 然后出现上边错误