IntelliJ IDEA for Mac 类和方法注释模板设置

文章目录

  • 类注释模板设置
    • 使用 File and Code Templates
      • 方法 1:直接在编辑区编写模板代码
      • 方法 2:使用 parse 指令来引用注释模板
    • 使用 Live Templates
  • 方法注释模板设置
    • 注意事项
    • 解决注释模板无法获取参数名和返回值类型的问题

类注释模板设置

使用 File and Code Templates

File and Code Templates 用来配置文件和代码模板,即文件在创建的时候自动会按文件模板生成代码注释。

按快捷键 command + , 或者 点击 IntelliJ IDEA --> Preferences 打开偏好设置,如下图所示:
在这里插入图片描述
然后选择 Editor --> File and Code Templates --> Files --> Class,如下图所示:
在这里插入图片描述

方法 1:直接在编辑区编写模板代码

在这里插入图片描述
类注释模板代码如下(可以直接复制使用):

/*** @ClassNAME ${NAME}* @Description TODO* @Author ${USER}* @Date ${DATE} ${TIME}* @Version 1.0*/

关于注释模板中的变量,你可以参考 Description 的相关说明:
在这里插入图片描述
设置好之后,每次创建类就会自动添加类注释啦!

注意:如果直接使用编辑区中的模板代码,那么 #parse 指令所引用的模板需要清空

方法 2:使用 parse 指令来引用注释模板

Using the #parse directive, you can include templates from the Includes tab, by specifying the full name of the desired template as a parameter in quotation marks. For example: #parse(“File Header.java”)

翻译:对想要使用的模板指定一个全名,将这个名称作为一个参数放在指令 parse 的双引号内,这样可以引用 Includes tab 中定义的模板

步骤 1:新建模板

Includes tab 中新建模板,根据需要对模板命名,如下图所示:
在这里插入图片描述
步骤 2:编写模板代码

在右侧的编辑区内编写注释模板代码,如下图所示:

在这里插入图片描述
步骤 3:使用 parse 指令来引用模板

在这里插入图片描述
注:默认是引用 File Header 模板,所以通常是在 File Header 编辑注释模板即可,然后通过 parse("File Header.java") 引用即可

使用 Live Templates

Live Templates 用来配置动态模板,可以在指定位置使用缩写字母自动生成注释。

步骤 1:创建动态模板

在这里插入图片描述
步骤 2:给模板命名,并设置扩展按键

先设置模板的扩展按键,然后采用缩写形式给模板命名,并对模板进行描述,如下图所示:

在这里插入图片描述

如上图所示的设置,输入 cc + enter 就可以生成注释

步骤 3:编写注释模板代码

在 Template text 编辑区编写注释模板代码

在这里插入图片描述
Live Template 的注释模板代码中的变量比较特别,需要在变量名称的首尾加上美元符号 $ ,如下所示:

/*** @className $name$* @description TODO* @author $user$* @date $time$ $date$* @version 1.0*/

步骤 4:对使用到的变量设置表达式

注释模板中引用了变量,但是变量的值如何获取,需要另外配置表达式才行。点击右侧 Edit variables ,打开设置窗口,如下图所示:

在这里插入图片描述

在这里插入图片描述
注:右边的 Skip if defined 建议全部打勾,这样有内容的注解就不会默认处于编辑状态(出现红色边框)。

在这里插入图片描述

步骤 5:设置模板的应用范围

将模板仅应用于 Java
在这里插入图片描述

在这里插入图片描述

方法注释模板设置

方法注释模板只能通过 Live Templates 来设置,设置流程同上述使用 Live Templates 设置类的注释模板一样。
在这里插入图片描述
配置模板中的自定义变量:
在这里插入图片描述

方法注释模板的代码如下:

/*** @description TODO* @methodName $name$* @param $param$* @return $return$* @author $user$* @date $time$ $date$*/

或者

 /*** * @param $param$* @return $return$* @author $author$* @date $date$ $time$*/

注意事项

正常配置的方法注释模板有问题,不能在方法外部正常使用,只能在方法内部正常使用,如下动态图所示:
在这里插入图片描述

但是 IDEA 默认的方法文档注释则可以在外部正常使用,可以获取方法参数、返回值类型、异常类型等信息;但是在方法内部则无效,如下动态图所示:

在这里插入图片描述

解决注释模板无法获取参数名和返回值类型的问题

正常配置的方法注释模板在使用时存在缺陷,在方法外部添加注释,根本无法获取到方法的参数、返回值类型等信息,只能在方法体内部使用。如果希望在方法外部使用注释,并且可以正常获取到方法的参数和返回值类型等信息,需要写 groovy 脚本代码。

注释模板必须按下面的格式写:

*** $end$$param$* @return $return$* @throws * @author $user$* @date $date$ $time$*/

在这里插入图片描述
模板变量的配置如下:
在这里插入图片描述
对应的 param 变量的 groovy 的脚本代码如下:

// 推荐这段代码
groovyScript("def result = '';def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++){result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]}; return result == '' ? '* @param ' : result", methodParameters())格式化代码:
groovyScript(
"
def result = '';
def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); 
for (i = 0; i < params.size(); i++) {result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]
}; 
// 当变量result的值为空字符串时,这里有特别处理
return result == '' ? '* @param ' : result
", 
methodParameters()
)// 推荐这段代码
groovyScript("def result = ''; def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++){result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]}; return result", methodParameters())格式化:
groovyScript(
"
def result=''; 
def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); 
for(i = 0; i < params.size(); i++) {result += ((i != 0) ? '\\n ':'') + '* @param ' + params[i]
};
// 变量result为空字符串时,这里并没有特别处理,具体也可以
return result
",
methodParameters()
)

对应的 return 变量的 groovy 的脚本代码如下:

// 返回值类型会显示类的全限定名
groovyScript("return (\"${_1}\" == 'void') || (\"${_1}\" == 'null') ? '' : \"${_1}\"", methodReturnType())// 或者这段代码,返回值类型只显示类型的名称,例如:ArrayList<Person>
groovyScript("def returnType = \"${_1}\"; def result ='';if(returnType=='null'||returnType=='void'){return '';}else{cls = returnType.split('<');for(i = 0; i < cls.size(); i++){temp = cls[i].tokenize('.');result += temp[temp.size() - 1] + ((i < cls.size() - 1) ? '<' : '');};return result + ' ';}", methodReturnType());

配置完成后,在方法的上面先输入 /*,再按 Enter 键就会自动生成注释了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/334756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机试题型_2020年焊工(技师)新版试题及焊工(技师)试题及答案

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序2020年焊工(技师)新版试题及焊工(技师)试题及答案&#xff0c;包含焊工(技师)新版试题答案和解析及焊工(技师)试题及答案练习。由安全生产模拟考试一点通公众号结合国家焊工(技师)考试最新大纲及焊工(技师)考试真题汇总…

Eclipse 如何修改默认工作空间和切换工作空间(Workspace)

文章目录如何关闭/开启 Eclipse Launcher 弹窗提示通过配置文件设置通过 IDE 的偏好设置如何修改 Eclipse 默认的工作空间和切换工作空间通过配置文件修改通过 Eclipse Launcher 窗口修改通过菜单来切换工作空间如何关闭/开启 Eclipse Launcher 弹窗提示 通过配置文件设置 ec…

hashmap java_Java – HashMap详细说明

hashmap javaHashMap基于哈希算法工作&#xff0c;根据Java文档HashMap具有以下四个构造函数&#xff0c; 建设者 描述 HashMap ​() 构造一个空的 具有默认初始容量&#xff08;16&#xff09;和默认加载因子&#xff08;0.75&#xff09;的HashMap 。 HashMap ​(int i…

广州电子厂房净化工程_简述设计电子车间净化工程的注意要点

在电子车间净化工程的设计、安装、选择净化设备与彩钢夹芯板的时候有哪些需要注意的要点呢?这些看起来不太重要的细节&#xff0c;却往往大大的影响了电子净化车间的净化效率与洁净度。而且这些注意要点&#xff0c;不仅在电子净化车间中适用&#xff0c;在食品加工厂、制药净…

使用log4j记录日志_使用log4j2免费分配日志记录

使用log4j记录日志介绍 最近&#xff0c;我正在为一个客户端工作&#xff0c;试图为大型精心制作的Java系统消除一些GC暂停。 经过分析后&#xff0c;我意识到大部分垃圾都是通过日志记录产生的&#xff01; 是否有一种简单的方法来删除所有分配&#xff1f; 原来有:) 我应该使…

Java Web工程结构_项目结构

文章目录Eclipse 的 Java Web 工程目录结构IDE 的目录结构截图本地的工作空间&#xff08;Workspace&#xff09;中的目录结构目录说明Eclipse 的 Java 工程目录结构IDE 的目录结构截图本地的工作空间中的工程目录MyEclipse 的 Java Web 工程目录结构IDE 目录结构截图本地的工作…

一天发多少短信会封号_枸杞一天吃多少?吃多了会怎样?黑枸杞红枸杞哪个好?...

●枸杞一天吃多少&#xff1f;其实枸杞作为一种滋补品&#xff0c;不适合过多的使用&#xff0c;因为那样反而会造成反作用和不良影响&#xff0c;健康的成年人每天吃20克左右就合适了&#xff0c;这样对一些疾病的治疗&#xff0c;才可以发挥更好的效果。如果是用枸杞子泡水喝…

IntelliJ IDEA for Mac 如何将普通 Java 项目变为 Web 项目

点击菜单栏 File --> Project Structure 在弹出的窗口中点击选择左侧的 Facets&#xff0c;接着点击右边的 &#xff0c;弹出的菜单中选择 web 在弹出的 『Choose Module』窗口中选择要转为 web 的项目&#xff08;模块&#xff09;&#xff0c;然后点击 OK 选择好模块后…

MacBook 如何强制删除『无法正常卸载』的应用程序

文章目录第一步&#xff1a;点击电脑屏幕左上角的 图标&#xff0c;再点击「关于本机」第二步&#xff1a;点击「储存空间」选项卡&#xff0c;接着点击「管理」第三步&#xff1a;选择左侧边栏的「应用程序」&#xff0c;然后在右侧的程序列表中选择要“删除”的程序&#x…

slot多作用域 vue_vue 深度长文之slot 篇

今天我们将分析我们经常使用的 vue 功能 slot 是如何设计和实现的&#xff0c;本文将围绕 普通插槽 和 作用域插槽 以及 vue 2.6.x 版本的 v-slot 展开对该话题的讨论。当然还不懂用法的同学建议官网先看看相关 API 先。接下来&#xff0c;我们直接进入正文吧普通插槽首先我们看…

android 扫描照片功能,Android自定义View- 雷达扫描图

首先来看看效果图&#xff1a;CSDN博客地址这里写图片描述这里我使用了两种实现方式&#xff1a;继承 view 实现。继承 surfaceview 实现。为什么会有两种实现方式呢&#xff1f;主要是因为我在继续加入一些自定义功能的时候&#xff0c;如果是继承 view &#xff0c;出现了卡顿…

SmartSVN for Mac 使用说明

文章目录连接 SVN 服务器签出&#xff08;Check Out&#xff09;导出&#xff08;Export&#xff09;打开工作副本&#xff08;Open Working Copy&#xff09;打开和管理项目移除工作副本&#xff08;Remove Working Copy&#xff09;项目及工作副本目录导航窗口查看和配置被忽…

bldc 原理 方波控制_【百问百答】ST 电机控制实战问答合辑 | 连载之一

点击下方链接可以直接观看电机直播及直播答疑电堂​wx18257eb0e8c82435.h5.xiaoe-tech.com电堂​wx18257eb0e8c82435.h5.xiaoe-tech.com本次实战问答只讨论同步电机&#xff0c;不对步进电机做特别的讨论&#xff0c;希望有助于大家进行电机开发或者是电机应用。Q1&#xff1a;…

android动画编辑软件,ALM视频动画编辑

ALM视频动画编辑app手机端中最为专业,强大的视频编辑工具,丰富的功能堪比pc级别,并且实用流畅不卡顿,操作简单明了,上手容易,视频效果出色,更多丰富素材内容使用&#xff01;下载ALM视频动画编辑app开始体验吧&#xff01;ALM视频动画编辑介绍ALM视频动画编辑神器为你提供非常高…

openhub_介绍OpenHub框架

openhub本文介绍OpenHub框架 -基于Apache Camel的新的开源集成解决方案。 本文回答了一些问题&#xff0c;为什么您应该关心另一个集成框架&#xff0c;强弱属性以及如何使用OpenHub启动新项目。 OpenHub框架是Apache Camel&#xff0c;但经过改进…… 当然&#xff0c;您只能…

spring 导出csv_Spring批处理CSV处理

spring 导出csv总览 我们将讨论的主题包括使用Spring Batch进行批处理的基本概念&#xff0c;以及如何将数据从CSV导入数据库。 0 – Spring Batch CSV处理示例应用程序 我们正在构建一个应用程序&#xff0c;演示用于处理CSV文件的Spring Batch的基础。 我们的演示应用程序将…

python强制结束函数_为什么Python没有 main 函数?终于有人给出了正确答案!

毫无疑问&#xff0c;Python中没有所谓的 main 入口函数&#xff0c;但在网上经常有文章提到“Python中的main函数”和“建议编写main函数”等。他们的目的可能是模仿真实的 main 函数&#xff0c;但是经常有很多人被误导&#xff08;或误解&#xff09;并编写非常繁琐的代码。…

MacOS 如何显示/隐藏文件

文章目录显示/隐藏文件快捷键修改“访达”属性修改文件隐藏属性设置特殊文件名实现隐藏使用命令设置文件隐藏属性显示/隐藏文件 快捷键 按下 Shift Command . 可以显示隐藏型的文件&#xff0c;再按下 Shift Command . 则不显示隐藏型的文件 修改“访达”属性 defaults…

不相关子查询的工作方式是_课题组工作|Nucleic Acids Research|基于表达密度谱的特征子空间分离及相关单细胞转录组分群新算法...

大家好&#xff01;为大家分享本课题组近期发表在Nucleic Acids Research的文章&#xff0c;题目为 “Entropy subspace separation-based clustering for noise reduction (ENCORE) of scRNA-seq data”&#xff0c;文章提出了一种基于表达密度谱的特征选择方法&#xff0c;能…

java 9 module_Java 9:欢迎来到Module World

java 9 moduleJava 9已于9月21日正式发布&#xff0c;Eclipse从Eclipse Oxygen.1a&#xff08;4.7.1a&#xff09;支持Java 9&#xff0c;让我们进入模块世界。 从此处下载Java 9&#xff0c;并将其添加到Eclipse Installed JRE中&#xff0c;如下所示 就是这样&#xff0c;…