java - 自动将注释附加到 Netbeans 中自动插入的大括号

标签 java templates netbeans coding-style autocomplete

我真的很欣赏 NetBeans 如何自动在我正在处理的代码中输入右括号。它是否可以进一步简化类似这样的代码的开发?:

public class Test
{
    public static void main(String[] Args)
    {
        //Some code here

        while(true)
        {
            //Some more code here

        }//end while

    }//end main
}//end class

最佳答案

不幸的是,似乎没有一种方法可以自定义 NetBeans 添加右括号时生成的内容:只有一个复选框用于确定是否在“工具”->“选项”->“编辑器”->“代码完成”中执行此操作。

这是下一个最佳解决方案:

NetBeans 具有“代码模板”功能,它们是预定义代码片段,当您键入一些预定义缩写然后按 Tab 键时会自动生成。例如,如果您输入 if 并点击 Tab,您的编辑器应生成以下代码:

if (true) {

}

您可以根据需要修改这些代码模板或创建自己的新代码模板。转到工具->选项->编辑器->代码模板。您将看到一个广泛的模板列表,每个模板都匹配一个缩写,以及一个用于更改它们的小编辑框。如果向下滚动到“if”,您将看到以下定义:

if (${EXP instanceof="boolean" default="true"}) {
   ${selection}${cursor}
}

您需要做的就是修改它以生成您想要的内容:

if (${EXP instanceof="boolean" default="true"}) {
   ${selection}${cursor}
}//end if

您可以对其他语句(例如 while)执行类似的操作。您会注意到,每个语句通常有多个基于不同模式的模板,因此这可能会变得乏味,具体取决于您想要的彻底程度。

此解决方案也适用于 main 方法,因为为其定义了一个模板 - 输入 psvm 并按 Tab 键生成它。对于其他任意方法,有一个带有缩写 m 的模板。

对于顶级类(class)来说,实现这种效果会有所不同。转到工具->模板。在这里您将看到另一组可以探索和修改的模板。不同之处在于这些是针对文件而不是代码片段。展开 Java 并打开 Java 类模板文件。您将看到以下内容:

<#assign licenseFirst = "/*">
<#assign licensePrefix = " * ">
<#assign licenseLast = " */">
<#include "../Licenses/license-${project.license}.txt">

<#if package?? && package != "">
package ${package};

</#if>
/**
 *
 * @author ${user}
 */
public class ${name} {

}

再次,您可以根据需要修改此模板:

public class ${name} {

}//end class

或者甚至:

public class ${name} {

}//end {$name}

这将为名为 Foo 的类添加 //end Foo

关于java - 自动将注释附加到 Netbeans 中自动插入的大括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7578311/

相关文章:

java - 使用 JFileChooser 选择文件夹

java - 使用 Selenium 选择一个按钮

java - 我可以确定我的 Java Web 应用程序在本地主机 :8080 is invisible from my fellow Starbucks customers? 上运行吗

java - 在对象之间放置空格的最佳方法是什么? Swing JSeparator 对象可以是不可见的分隔符吗?

java - 在非 Activity 类中获取 Android App Start Time

c++ - 尝试在模板类中使用模板对象时出现问题

C++ 模板如何重载运算符和访问私有(private)属性

c# - ASP.NET MVC 电子邮件

NetBeans 平台单元测试库依赖项

java - Netbeans 8.0 错误地给出 "Unknown HTML tag"警告