import java.awt.event.*;<br />import java.lang.reflect.*;<br />import javax.swing.*;<br />public class EventHandlerTest1 extends JFrame<br />{<br />JButton btnSearch = new JButton("abc");;<br />public EventHandlerTest1()<br />{<br />btnSearch.addActionListener(<br />new EventHandler(this,"btnSearch_Click"));<br />add(btnSearch);<br />pack();<br />setVisible(true);<br />}<br />public void btnSearch_Click(ActionEvent e)<br />{<br />System.out.println("aaa");<br />}<br />public static void main(String[] args)<br />{<br />new EventHandlerTest1();<br />}<br />}</p><p>class EventHandler implements ActionListener<br />{<br />private Object form = null;<br />private String methodName = null;<br />public EventHandler(Object form,String methodName)<br />{<br />this.form = form;<br />this.methodName = methodName;<br />}<br />public void actionPerformed(ActionEvent e)<br />{<br />Class formType = this.form.getClass();<br />try<br />{<br />Method method = formType.getMethod(this.methodName,new Class[]{e.getClass()});<br />method.invoke(this.form, new Object[]{e});<br />}<br />catch(Exception ex)<br />{<br />return;<br />}<br />}<br />}