下面是书上的范例
是改写成匿名类别来实作倾听者
不太懂为什么这种写法
为何可以省略“implements ActionListener”
thank
import javax.swing.*;
import java.awt.event.*;
public class AnonymousListener extends JFrame {
int act = 0; // 用来记录按钮被次数的变量
public static void main(String[] args) {
AnonymousListener test = new AnonymousListener();
}
// 用建构方法建立元件、将元件加入视窗、显示视窗
public AnonymousListener() {
setTitle("Listener 示范");
JButton mybutton = new JButton("换个标题");
// addActionListener() 的参数为匿名类别物件
mybutton.addActionListener(
// 以下建立的匿名类别物件为按钮物件的倾听者
new ActionListener() {
public void actionPerformed(ActionEvent e) {
act++; // 将按钮次数加 1
setTitle("发生 " + act + " 次按钮事件");
}
}
);
getContentPane().add(mybutton);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(420,140);
setVisible(true);
}
}