下面这段代码在JCreator中能运行,在Eclipse中却报错,错误如下:Exception in thread "main" java.lang.NoSuchMethodError: GUI.MyFrame: method <init>(Ljava/lang/String;)V not found
at GUI.MyMouseListenerTest.main(MyMouseListenerTest.java:11)请问是为什么。
import java.awt.*;
import java.awt.event.*;
import java.util.*;public class MyMouseListenerTest 
{
public static void main(String[] args) 
{
new MyFrame("cds");
}
}class MyFrame extends Frame
{
ArrayList al;

public MyFrame(String s)
{
super(s);
al = new ArrayList();
this.setBounds(200, 200, 400, 600);
this.setBackground(Color.gray);
this.addMouseListener(new MyMouseListener());
setVisible(true);
}

public void addPoint(Point p)
{
al.add(p);
}

private class MyMouseListener extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
Point p = new Point(e.getX(),e.getY());
addPoint(p);
repaint();
}
}

public void paint(Graphics g)
{
Iterator i = al.iterator();
while(i.hasNext())
{
Point p = (Point)i.next();
g.setColor(Color.GREEN);
g.fillOval(p.x, p.y, 10, 10);
}

}
}

解决方案 »

  1.   

    我可以的,你把这个MyMouseListenerTest.java文件在cmd中运行下试试
      

  2.   


    E:\工作软件\JavaDemo>javac MyMouseListenerTest.java
    注意:MyMouseListenerTest.java 使用了未经检查或不安全的操作。
    注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。E:\工作软件\JavaDemo>java MyMouseListenerTest我cmd下运行的是这个情况,但是窗口还是弹出来的的,点几下是绿色的小点点
      

  3.   

    private class MyMouseListener extends MouseAdapter估计是不提倡这样做Eclipse下很多错误不是因为他错了...而是因为这样做它认为不好...直接算成是错误..让人们用更好的方法去做