在 UI 中添加按钮侦听器时,我遇到了 2 种不同的样式。我以 SWT 为例。但尽管如此,我在 J2ME、Flash Actionscript 中也看到了类似的代码。
风格一:
b1.addSelectionListener(new SelectionListener()
{
public void widgetSelected(SelectionEvent e)
{
System.out.println("b1: ");
}
public void widgetDefaultSelected(SelectionEvent e)
{
System.out.println("Default selection");
}
});
b2.addSelectionListener(new SelectionListener()
{
public void widgetSelected(SelectionEvent e)
{
System.out.println("b2: ");
}
public void widgetDefaultSelected(SelectionEvent e)
{
System.out.println("Default selection");
}
});
风格2:
b1.addSelectionListener(this);
b2.addSelectionListener(this);
public void widgetSelected(SelectionEvent e)
{
if (e.getSource() == b1)
{
System.out.println(b1);
}
else if (e.getSource() == b2)
{
System.out.println(b2);
}
}
public void widgetDefaultSelected(SelectionEvent e)
{
System.out.println("Default selection");
}
我个人更喜欢第二种风格,因为它为我提供了一种集中处理鼠标事件的方式。你更喜欢哪种风格?为什么?