Java Eclipse中定义的${body_statement}在哪里
在Eclipse Luna中,我想更改自动生成方法的内容,因此我转到了窗口->首选项->Java->代码样式->代码模板->代码->方法体,在那里我看到了以下声明:Java Eclipse中定义的${body_statement}在哪里,java,eclipse,Java,Eclipse,在Eclipse Luna中,我想更改自动生成方法的内容,因此我转到了窗口->首选项->Java->代码样式->代码模板->代码->方法体,在那里我看到了以下声明: // ${todo} Auto-generated method stub ${body_statement} 是否可以更改${body_statement}内容 Edit:@Duncan-我不希望生成的方法返回null,但我希望它们抛出一个异常,说明该方法未实现。我想更改${body_statement}的原因是我想通过一次编辑
// ${todo} Auto-generated method stub
${body_statement}
是否可以更改${body_statement}内容
Edit:@Duncan-我不希望生成的方法返回null,但我希望它们抛出一个异常,说明该方法未实现。我想更改${body_statement}的原因是我想通过一次编辑来更改所有出现的内容,我不想逐个检查所有模板。
${body_statement}
是一个“变量”。单击代码模板列表右侧的“编辑…”编辑代码模板,并使用“插入变量…”查看可用变量列表
对于新方法,${body_statement}
变量实际上是空的。如果您想为每个新方法提供一些默认代码,您可以简单地将该文本添加到${body_statement}
上方
在该模板中的变量下面添加实际代码将不起作用,因为在某些情况下,
${body\u statement}
将被返回
语句替换。只需删除模板中对${body\u statement}的调用即可
这是我的方法体模板,它添加了TODO和调用方法时的异常:
// ${todo} Implement ${enclosing_type}.${enclosing_method}
throw new RuntimeException("Unimplemented Method ${enclosing_type}.${enclosing_method} invoked.");
在编写后调用时
int foo = doSomething();
生成:
private int doSomething() {
// TODO Implement ScaledFraction.doSomething
throw new RuntimeException("Unimplemented Method ScaledFraction.doSomething invoked.");
}
我相信这是一个常数,不能改变。它插入适当的默认返回值,或根据需要调用
super(…)
。如果你告诉我们你想要实现什么可能会更容易,也许还有另一种方法。如果我只想添加一个空行作为默认代码呢?我更喜欢UnsupportedOperationException
。这更具表现力。也许我会换。