【IDEA】瑞_IDEA模版注释设置_IDEA自动生成注释模版(详细图文步骤)

文章目录

    • 1 概要
    • 2 类的自定义模版注释
    • 3 自定义模版注释
      • 3.1 方法的自定义模版注释
      • 3.2 属性的自定义模版注释

🙊 前言:在Java开发中,注释具有不可或缺的重要性,注释负责解释代码,能帮助开发人员深入理解代码的逻辑和功能,可以提高代码的可读性,使其他开发者能更容易地理解和使用你的代码。而IDEA中自带的默认注释模板过于简单,所以本文将带大家设置IDEA自定义的类和方法注释的模版




1 概要

  根据《Java开发手册》(九) 注释规约第一条中强制规定了:类、类属性、类方法的注释必须使用 Javadoc 规范,使用/** 内容*/格式,不得使用// xxx 方式。这样可以是开发者在 IDEA中,工程调用方法时,不进入方法即可悬浮提示方法、参数、返回值的意义,提高阅读效率。而在《Java开发手册》(九) 注释规约第三条中强制规定所有的类都必须添加创建者和创建日期,如下图所示:
在这里插入图片描述

  而IDEA中默认给出的注释模版生成的注释过于简单,没有创建者、创建日期等信息,但我们可以通过设置IDEA中的模版注释,设置自定义自动生成的注释模版,下图为博主设置的类和方法的注释模版示例效果:

在这里插入图片描述

  在其它类中调用方法rayTest就可以看到如下所示的效果:

在这里插入图片描述

  除了编程规约中强制约定的创建者、创建日期这两个信息是固定的,其它信息如版本号等可以自定义设置。以上示例图是博主的习惯,仅供参考,请大家自定义模版

2 类的自定义模版注释


在这里插入图片描述

  在设置中(快捷键ctrl+alt+s)搜索或者直接如上图找到File and Code Templates设置项,输入自定义内容,也可以直接复制如下代码,记得修改作者名

/*** 描述** @author LiaoYuXing-Ray* @version 1.0* @createDate ${DATE} ${TIME}**/

  1️⃣ @author 作者名(必备注释项):可以像博主一样写成死字符串,也可以使用函数获取当前计算机用户名 @author `${USER}` 请注意大小写
  2️⃣ @version 版本号(可选注释项):建议像博主一样写死1.0,因为新创建的类没什么特殊情况下就是 1.0 版本
  3️⃣ @createDate 创建时间(必备注释项):根据规约,强制日期的设置统一为yyyy/MM/dd 的格式。所以我们使用函数 ${DATE} ${TIME} 表示即可,至于你喜欢叫date或者createDate还是其它的都行,但建议不要使用中文

3 自定义模版注释

  在设置中(快捷键ctrl+alt+s)搜索或者如下图找到Live Templates设置项,点击+号新建模版组(2 Template Group…)

在这里插入图片描述
  输入模版组的名字并点击OK,由于博主已经创建了Ray模版组,所以OK选项是灰色的,如下图所示:

在这里插入图片描述
  接下来可以在新建的模版组中添加你希望自定义的模版,如方法(/** 内容 */)、属性( /* 内容 */)的模版。


以下步骤必须一致,不然可能存在问题

3.1 方法的自定义模版注释

  1️⃣选择你刚刚创建的模版组,然后点击"+"号新建模版(1 Live Template),如下图所示:

在这里插入图片描述
  2️⃣设置Abbreviation的值为:** ,这个值是后续快速插入模版使用的召唤值(可以自定义)
  3️⃣设置Description的值为:方法注释(可以自定义)

在这里插入图片描述)
  4️⃣设置Template text的值如下代码,由于格式非常容易打错,建议直接复制粘贴后再按自己需求修改

*** $end$*$param$* @return $return$* @author LiaoYuXing-Ray $date$ $time$**/

  5️⃣如下图所示,点击下方的"Define"(第一次定义该模版)或者"Change"(已定义过该模版,现在为修改),设置该模版的使用场景

在这里插入图片描述
  第一次定义某个模版点击"Define"设置该模版的使用场景,如下图所示:

在这里插入图片描述

  6️⃣设置该模版的使用场景,找到Java项进行勾选,如下图所示:

在这里插入图片描述

  7️⃣点击"Edit variables",如下图所示:

在这里插入图片描述
  8️⃣在弹出的"Edit Template Varibles"中填入对应的方法(建议直接复制粘贴图下的代码,尤其是param,非常易错),再点击OK,如下图所示:

在这里插入图片描述

// param
groovyScript("def result='';def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]','').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] == '') continue;if(i==0) result ='* @param ' +params[0] +((params.size()==1)?'':'\\n');else{ result+='     * @param ' +params[i] +((i<params.size()-1)?'\\n':'')}};return result",methodParameters())// return
methodReturnType()// date
date()// time
time()

此步骤非常重要,出错会直接导致自定义模版函数不会生效

  9️⃣选择"Options"中的"Expand with",修改为Space(可自定义),如下图所示:
在这里插入图片描述

  此步骤是设置召唤模版的快捷键,自定义模版的使用是通过步骤2️⃣中设置的 Abbreviation的值如:** 加上 本步骤设置的快捷键即Space(空格键)的组合召唤模版。
  IDEA默认使用的是Enter即使用 /** 加 回车键(Enter)即可快捷进行方法注释,但博主喜欢使用Space(空格键),因为这样设置很方便就能打出方法注释(也许是博主的手太小了,按Enter不方便🌿)总之请按照自己的习惯自定义

  🔟最后一步也是最关键的一步,请记得按❗️Apply❗️

在这里插入图片描述

现在我们可以愉快的在方法上使用 "/** 空格" 召唤我们自定义的方法模版注释了

3.2 属性的自定义模版注释

由于属性和方法的设置基本一致,甚至更简单,所以部分图片就不再展示

  1️⃣选择刚刚创建的模版组,然后点击"+"号新建模版(1 Live Template),
  2️⃣设置Abbreviation的值为:* (可以自定义)
  3️⃣设置Description的值为:属性注释(可以自定义)
  4️⃣设置Template text的值如下代码,由于格式非常容易打错,建议直接复制粘贴后再按自己需求修改

*** $end$ $date$ $time$*/

  5️⃣点击下方的"Define"或者"Change",设置该模版的使用场景
  6️⃣设置该模版的使用场景为Everywhere,由于属性注释是通用的,所以博主直接勾选Everywhere,当然你也可以自定义勾选使用场景
  7️⃣点击"Edit variables"
  8️⃣在弹出的"Edit Template Varibles"中下拉选择填入对应的方法,再点击OK,如下图所示:

在这里插入图片描述
  9️⃣选择"Options"中的"Expand with",修改为Space(可自定义)
  🔟最后一步,记得按❗️Apply❗️

现在我们可以愉快的在属性上使用 "/* 空格" 召唤我们自定义的属性模版注释了,效果如下

在这里插入图片描述

  如果需要修改模版,主要修改第4️⃣步中的"Template text"的内容,如果使用函数要记得在"Edit variables"中设置




本文是博主的粗浅理解,可能存在一些错误或不完善之处,如有遗漏或错误欢迎各位补充,谢谢

  如果觉得这篇文章对您有所帮助的话,请动动小手点波关注💗,你的点赞👍收藏⭐️转发🔗评论📝都是对博主最好的支持~


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

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

相关文章

关联规则分析(Apriori算法2

目录 1.核心术语&#xff1a;2.强关联规则&#xff1a;小结&#xff1a; 1.核心术语&#xff1a; 支持度&#xff08;Support&#xff09;&#xff1a;指项集出现的频繁程度&#xff08;相当于项集出现的概率&#xff09; 最小支持度有绝对值和占比两种表示方式 置信度&#…

Xtuner大模型微调

Xtuner大模型微调 一、课程笔记 文档链接&#xff1a;https://github.com/InternLM/tutorial/blob/main/xtuner/README.md 视频链接&#xff1a; https://www.bilibili.com/video/BV1yK4y1B75J/ 大模型微调 大模型的训练利用了各类数据&#xff0c;可以说是一个通才&#xff…

数据仓库(2)-认识数仓

1、数据仓库是什么 数据仓库 &#xff0c;由数据仓库之父比尔恩门&#xff08;Bill Inmon&#xff09;于1990年提出&#xff0c;主要功能仍是将组织透过资讯系统之联机事务处理(OLTP)经年累月所累积的大量资料&#xff0c;透过数据仓库理论所特有的资料储存架构&#xff0c;做…

高级路由技术案例

文章目录 案例项目一&#xff1a;1、静态ECMP和浮动静态路由配置实验2、浮动静态路由配置 案例项目二&#xff1a;使用filter-policy过滤路由案例项目三&#xff1a;IS-IS基本配置案例项目四&#xff1a;OSPF基本配置案例任务一&#xff1a;OSPF单区域配置案例任务二&#xff1…

开源 UI 组件库和开发工具库概览 | 开源专题 No.59

ant-design/ant-design Stars: 87.9k License: MIT Ant Design 是一个企业级 UI 设计语言和 React UI 库。 为 Web 应用程序设计的企业级 UI。提供一套高质量的开箱即用的 React 组件。使用可预测静态类型编写 TypeScript 代码。包含完整的设计资源和开发工具包。支持数十种语…

小程序基础学习(组件传参)

原理&#xff1a;通知在组件标签中传递参数已达到传参的目的 在组件的js的 properties中接受传递来的参数 然后在页面是展示这些数据 源码&#xff1a; <!--components/my-info/my-info.wxml--> <view class"title"> <text class"texts"&g…

Java--RSA非对称加密的实现(使用java.security.KeyPair)

文章目录 前言实现步骤测试结果 前言 非对称加密是指使用不同的两个密钥进行加密和解密的一种加密算法&#xff0c;调用方用使用服务方提供的公钥进行加密&#xff0c;服务方使用自己的私钥进行解密。RSA算法是目前使用最广泛的公钥密码算法。Java提供了KeyPairGenerator类要生…

BikeDNA(七)外在分析:OSM 与参考数据的比较1

BikeDNA&#xff08;七&#xff09;外在分析&#xff1a;OSM 与参考数据的比较1 该笔记本将提供的参考自行车基础设施数据集与同一区域的 OSM 数据进行所谓的外部质量评估进行比较。 为了运行这部分分析&#xff0c;必须有一个参考数据集可用于比较。 该分析基于将参考数据集…

01.neuvector防护平台功能实现设计

本篇文章主要讲neuvector大概的设计与实现&#xff0c;功能实现细节可查看后续文章&#xff0c;原文链接,欢迎大家关注我的github账号 一、整体架构 相关主要业务容器运行结构如下&#xff1a; 主要容器为以下几个&#xff1a; Controller容器负责规则的收集与下发&#xff0…

Open3D AABB包围盒计算与使用(19)

Open3D AABB包围盒计算与使用(19) 一、算法速览二、算法实现1.代码2.结果少年听雨歌楼上。红烛昏罗帐。壮年听雨客舟中。江阔云低、断雁叫西风。 而今听雨僧庐下。鬓已星星也。悲欢离合总无情。一任阶前、点滴到天明。 一、算法速览 AABB包围盒就是将点云用一个各条边沿着坐…

OceanBase架构概览

了解一个系统或软件&#xff0c;比较好的一种方式是了解其架构&#xff0c;下图是官网上的架构图&#xff0c;基于V 4.2.1版本 OceanBase 使用通用服务器硬件&#xff0c;依赖本地存储&#xff0c;分布式部署在多个服务器上&#xff0c;每个服务器都是对等的&#xff0c;数据库…

翻译: Streamlit从入门到精通 基础控件 一

这个关于Streamlit的教程旨在帮助数据科学家或机器学习工程师&#xff0c;他们不是网络开发者&#xff0c;也不想花费数周时间学习使用这些框架来构建网络应用程序。 1. 什么是Streamlit&#xff1f; Streamlit是一个免费且开源的框架&#xff0c;用于快速构建和共享美观的机器…

[小程序]定位功能实现

第一步:首先要认识三个小程序的 api wx.chooseLocation 和 wx.getLocation 和 wx.openLocation (1).wx.chooseLocation 用于在小程序中选择地理位置。当用户点击选择位置按钮时&#xff0c;小程序会调起地图选择界面&#xff0c;用户可以在地图上选择一个位置&#xff0c;并可以…

ubuntu连接xshell怎么连接

在网上找了好多办法都不行 例如 太久没打开Ubuntu可能输入命令查不到IP地址&#xff0c;解决办法也比较简单&#xff0c;首先第一步 确定自己能不能进入管理员root权限&#xff08;输入命令su&#xff09;&#xff0c;如果没有的话得重新配置&#xff0c;如下图 这是因为当前Ub…

LINUX基础第十一章:文件系统与日志服务管理

目录 一.LINUX文件系统 1.inode表和block &#xff08;1&#xff09;inode &#xff08;2&#xff09;block 2.查看inode号命令 3.Linux系统文件三种主要时间属性 4.磁盘空间还剩余很多但无法继续创建文件 5.inode大小 二.日志 1.日志保存位置 2.日志文件的分类 &am…

Java设计模式-备忘录模式

备忘录模式 一、概述二、结构三、案例实现&#xff08;一&#xff09;“白箱”备忘录模式&#xff08;二&#xff09;“黑箱”备忘录模式 四、优缺点五、使用场景 一、概述 备忘录模式提供了一种状态恢复的实现机制&#xff0c;使得用户可以方便地回到一个特定的历史步骤&…

超越GPU:TPU能成为接班人吗?

在计算机的世界里&#xff0c;硬件技术的发展一直在快速推进。今天&#xff0c;我们要谈论的就是一种特殊的处理器&#xff1a;TPU&#xff0c;全称是Tensor Processing Unit。在我们开始深入探讨TPU之前&#xff0c;先了解一下两个重要的芯片技术&#xff0c;FPGA和ASIC。 FP…

计算机网络 —— 数据链路层

数据链路层 3.1 数据链路层概述 数据链路层把网络层交下来的数据构成帧发送到链路上&#xff0c;以及把收到的帧数据取出并上交给网络层。链路层属于计算机网络的底层。数据链路层使用的信道主要由以下两种类型&#xff1a; 点对点通信。广播通信。 数据链路和帧 链路&…

DHCP详解(配置小实验)

目录 一、DHCP 1、了解DHCP 2、使用DHCP的好处 3、HDCP的分配方式 4、DHCP协议中的报文 5、DHCP的租约过程 6、安装和配置DHCP服务 一、DHCP 1、了解DHCP DHCP(Dynamic Host Configuration Protocol&#xff0c;动态主机配置协议)由Internet工作任务小组设计开发专门用…

java每日一题——ATM系统编写(答案及编程思路)

前言&#xff1a; 基础语句学完&#xff0c;也可以编写一些像样的程序了&#xff0c;现在要做的是多加练习&#xff0c;巩固下知识点&#xff0c;打好基础&#xff0c;daydayup! 题目&#xff1a;模仿银行ATM系统&#xff0c;可以创建用户&#xff0c;存钱&#xff0c;转账&…