如何在Java中使用非抽象类实现ActionListener

时间:2014-04-03 04:01:09

标签: java applet awt actionlistener actionevent

这是我正在尝试编译的代码。我得到的是这样的错误

s09_02不是抽象的,不会覆盖抽象方法 java.awt.event.ActionListener中的actionPerformed(java.awt.event.ActionEvent)。

所以我的问题是,如果类不是抽象的,我如何将ActionListener实现到我的类(s09_02)中?

以下是整个代码:(因为我不知道问题出在哪里)

import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class s09_02 extends Applet implements ActionListener{
public void init()
 {
  setLayout(null);
  setBackground(new Color(0,10,100));
 }
 public void paint(Graphics p){String t=null;
 int x,y,w,h,r,g,b;
 t=getParameter("xx");
 x=Integer.parseInt(t);
 t=getParameter("yy");
 y=Integer.parseInt(t);
 t=getParameter("ww");
 w=Integer.parseInt(t);
 t=getParameter("hh");
 h=Integer.parseInt(t);
 t=getParameter("rr");
 r=Integer.parseInt(t);
 t=getParameter("gg");
 g=Integer.parseInt(t);
 t=getParameter("bb");
 b=Integer.parseInt(t);
 p.setColor(new Color(r,g,b));
 p.fillRect(x,y,w,h);

} }

<html>
<body>
<applet code="s09_02.class" width=400 height=400>
<param name="xx" value="25"><param name="yy" value="25">
<param name="ww" value="150"><param name="hh" value="150">
<param name="rr" value="0"><param name="gg" value="150">
<param name="bb" value="100">
</applet>
</body>
</html>


Also suggest me what changes should i make in this code so that code runs properly ??
Thanks...

2 个答案:

答案 0 :(得分:3)

在实施public void actionPerformed(ActionEvent e){}时,您需要在代码中添加ActionListner

ActionListnerinterface,因此您需要覆盖ActionListner的抽象方法

如果您没有使用任何活动,请从代码中删除implements ActionListner

答案 1 :(得分:2)

您需要实施方法

    @override
public void actionPerformed(ActionEvent e){
//code that dose something
}

http://docs.oracle.com/javase/7/docs/api/java/awt/event/ActionListener.html