代码是这样:下拉列表有“计算圆面积”和“三角形面积”两个选项,当法生ItemEvent事件时,窗口出现计算相应面积的用户界面。有四个类:圆,三角形,窗口,包括main的主类。
结构如下:
 
class 圆 extends Panel implements ActionListener{
//构造方法
圆{}{
 //成语变量}
 public void actionPerformed(ActionListener e){
//处理代码 }
}class 三角形 extends Panel implements ActionListener{
//构造方法
三角形{}{
 //成语变量}
 public void actionPerformed(ActionListener e){
//处理代码 }
}class Myframe extends Frame implements ItemListener{
处理代码;}class Example11
{public static void main(String args[])
{new Myframe("窗口");}
}运行错误提示:圆 and 三角形is not abstract and does not override abstract method actionPerformed(java.awt.event.ActionEvent)in java.awt.event.ActionListener我在类中不是已经实现事件方法了么。请问这是为什么?

解决方案 »

  1.   

    public void actionPerformed(ActionListener e){actionPerformed(java.awt.event.ActionEvent)仔细看看有什么不一样,人家接口定义的是一个参数为ActionEvent的actionPerformed方法,你定义的是一个参数为ActionListener 的actionPerformed方法,所以........把你的参数类型改一下就可以了。
      

  2.   


    public void actionPerformed(ActionListener e)是ActionEvent类型事件,你的参数ActionListener是实现事件的接口,把其中的参数改为ActionEvent e即可。