这是正确的方式,程序员用来处理JAVA中的事件?问题是,是否可以在Eclipse的设计视图中自动生成代码双击按钮
btn_add_game.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
MY CODE TO EXECUTE;
}
});
或者编写实现动作侦听器的类然后编写代码是必要的吗?
另外,在同一主题上,在eclipse中使用Designer视图是否正常或者硬核程序员只使用代码?
答案 0 :(得分:1)
你所写的内容非常好。这是一个匿名的内部阶级,我不认为拥有这些是代码气味。
想象一下,如果您已将所有侦听器实现为单独的类。你最终会得到大量的类,这些类本质上是匿名函数(比如其他语言的labdas)。
所以是,继续并使用生成的侦听器。
你的另一个问题是宗教问题。一半的程序员会说不使用它,另一半会告诉你使用它。这一切都归结为偏好。如果相关设计师生成质量代码,则使用它,否则不使用。
答案 1 :(得分:1)
这一切都取决于您公司的政策,以及您希望将代码分成逻辑单元的程度。您在问题中提供的代码是可以的;它将允许您处理事件。
但是,我通常更喜欢有一个单独的类,它扩展了我需要的监听器接口,而不是拥有一堆匿名内部类。它生成更清晰的代码(在我看来),并使以后更容易维护或添加新功能。但请记住,这只是我的意见(亚当发布了一个完全有效的答案,这违背了我的意见)。
就编码GUI而言,我从不使用GUI构建器,我发现我无法控制GUI组件,布局和行为。我总是手工编写代码,使用适当的LayoutManager
或管理器组合。但是,如果您的用户界面足够简单,并且您不想花时间学习如何在Java中处理GUI,那么使用构建器是一个非常有效的选项。
答案 2 :(得分:1)
这取决于你的需要。
ActionListener
以进行维护并减少样板代码。