在Eclipse中,如何更改类/类型模板中的默认修饰符?

时间:2009-10-23 08:02:45

标签: java eclipse coding-style templates

Eclipse新类型的默认模板(Window> Preferences> Code Style> Code Templates> New Java Files)如下所示:

${filecomment}
${package_declaration}

${typecomment}
${type_declaration}

创建一个新类,它看起来像这样:

package pkg;

import blah.blah;

public class FileName {
    // Class is accessible to everyone, and can be inherited 
}

现在,我热切地认为访问应该尽可能地受到限制,除非明确允许,否则应该禁止继承,所以我想更改${type_declaration}以将所有类声明为{{ 1}}而不是final

public

说起来容易做起来难。我发现谷歌搜索的唯一内容是2004 question on Eclipse's mailing list没有答案。

那么,简而言之:如何更改Eclipse中的默认类/类型修饰符?

如果重要的话,我正在使用Eclipse Galileo(3.5)。

5 个答案:

答案 0 :(得分:2)

看起来不可能。 ${type_declaration}是内部资料。

您可以做的是每次点击“New Java Class”-Dialog中的最后一个复选框。但那不是你想要的。

答案 1 :(得分:1)

使用New Class Wizard创建新类时,只需检查相应的访问修饰符。

New Java Class Wizard

答案 2 :(得分:1)

好吧,我认为没有任何很酷的答案,那么“黑客”呢?

${filecomment}
${package_declaration}

${typecomment}
import invalid;/* ${type_declaration} */

final class ${type_name} { }

如果您现在按 Control + Shift + O 来组织导入,旧的类型声明将消失。您还可以添加组织导入以保存操作以自动执行。

我知道这很糟糕,但它可以做你想要的。

答案 3 :(得分:0)

也许这会对你有帮助吗?

  eclipse\plugins\org.eclipse.jdt.ui_*.jar\templates\

Eclipse custom variable for java code templates

答案 4 :(得分:0)

以下是我的解决方法:

编辑模板:

${filecomment}
${package_declaration}

${typecomment}   
final class ${type_name} {

    /* ${type_declaration} //delete */

    /** 
     * @see {@link Object#toString()}
     * @return String representation of this instance. 
     */
    public String toString() {
        return "some impl";
    }

}

注释掉$ {type_declaration}因为它是必需的。您有删除评论,但已达到要求。对不起,如果这是一个2岁的帖子,但对我来说它仍然是相关的。