有时我倾向于使用eclipse(3.5)中的自动完成功能来获取匿名内部类型。出于某种原因,eclipse总是以错误的顺序放置结尾括号和分号。一个小例子:
button.addActionListener( new Act... ) // <-- Pressing Autocomplete (strg+space)
结果:
button.addActionListener( new ActionListener()
{
@Override
public void actionPerformed( ActionEvent e )
{
// TODO Auto-generated method stub
}
};) // <-- why?
Didnt在日食的编码模板中找到了它。我也不能切换到3.6,虽然我不知道,如果那已经“修复”了(如果这甚至应该是一个错误),因为eclipse可能只是不知道,它必须使用自动完成后面的括号。猜测处理有点复杂,因为他不会检查自动完成背后的字符,所以他不能使用结束括号?如果我错了,请纠正我。
猜猜我有一个糟糕的一天(常见的星期一!),这就是为什么它现在让我感到厌恶,但也许有人知道如何影响这种行为?
电贺, ymene
答案 0 :(得分:4)
似乎(有点)在Helios(3.6)中工作。它根本没有放置分号。
答案 1 :(得分:2)
猜猜我有一个糟糕的一天(常见的 星期一!),这就是为什么它让我感到厌恶 现在,但也许有人有 想法如何影响这种行为?
提交Eclipse的错误。
这种行为确实让我感到有些困扰,但没有提到有关它的错误。
答案 2 :(得分:1)
然后试试这个(无论如何它都可能是更好的风格!):
ActionListener actionListener = new Act...
button.addActionListener(actionListener);
这是我认为他们可能想到的(因为在这种情况下,分号是有用的)。但是,如果Helios通过省略分号来解决这个问题,就像Skip Head建议的那样,那么他们似乎无法确定你是否在括号内写字 - 假设你的代码在这个阶段还没有编译。