站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题ActionListener问题

ActionListener问题

摘要: ActionListener问题


public class FrameTest extends Frame implements ActionListener
{
public static void mian(String args[])
{
FrameTest test =new FrameTest();
Button btTest=new Button();
btTest.addActionListener(this);
}
}


请教addActionListener的参数应该是ActionListener,这里的this是指的谁,在别人的代码里也有这样写的

btTest.addActionListener(new ActionListener);
这两行代码有什么区别吗?


this 就是这个类FrameTest,而FrameTest实现了ActionListener接口,所以this就是一个ActionListener



两种写法有什么区别吗?


要求实现  ActionListener  就可以


没有区别都要实现actionPerformed()方法


addActionListener()方法,需要一个实现了 ActionListener 接口的对象,this表示FrameTest 本身,而FrameTest 又实现了ActionListener接口,所以就可以btTest.addActionListener(this);


第一,这样的代码很烂,如果我是测试人员,一定让这个代码重写
第二,实现了ACTION接口,却没有实现方法,这个类毫无意义
第三,this就是指本类,即FrameTest,由于实现了action,所以可以转型,放到addaction中
第四,btTest.addActionListener(new ActionListener),少了括号,也少了实现方法,无法编译通过
第五,重申一遍,我真的很想把写这段代码的人踩死!!!!!!!


楼上的是不是太严谨了,楼主只是拿代码说明一下问题,我想知道的人都明白
楼主的代码明显临时写写想说明一下问题的,楼上所说的少括号,少实现方法,都没错,那还有main方法的main都写错了的,明白就可以了,
不过对于一个写代码的人看着一些垃圾代码确实会难受~~


FrameTest

代码稍显简洁


↑返回目录
前一篇: 得到除 ' @ #外的所有字符
后一篇: 有段c的程序,需要用java写,请熟悉c和java的高手帮忙,谢谢!