我对Java非常陌生,对ActionEvent类感到困惑。

我的印象是,要使用一个类,您必须创建一个新对象,例如:

SomeClass aClass = new SomeClass();


但是在这段代码中:

private class theHandler implements ActionListener{

    public void actionPerformed(ActionEvent event){
       Event.getSource()
      // etc...
    }
}


您怎么不需要:

ActionEvent event = new ActionEvent();


事件无需明确告诉即可成为ActionEvent类的实例。
抱歉,这是一个愚蠢的问题,我正在教自己的Java,这使我感到完全困惑。

最佳答案

ActionEvent是在某处创建的,但是您并未明确创建它。相反,它是在JButton的代码中创建的(实际上该代码在AbstractButton类中,该类是JButton的父类),用于通知所有ActionListener侦听器已附加到该侦听器。您可以根据需要查看源文件以查看详细信息。

09-10 01:14
查看更多