【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.rhkb.cn/news/237653.html

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

相关文章

Vue2:通过ref获取DOM元素

一、场景描述 我们在页面的开发过程中&#xff0c;经常需要操作dom元素&#xff0c;来实现我们需要的效果。 以往js中&#xff0c;我们是通过给dom添加id&#xff0c;然后&#xff0c;通过js代码document来获取这个dom 简写代码案例&#xff1a; <h2 id"test"&…

Flutter之运行错误:this and base files have different roots

运行时报错&#xff1a; this and base files have different roots: E:\Demolpro\waqu\build\flutter-plugin-_android_lifecycle and C:\Users\78535\AppData\Local\Pub\Cache\hosted\pub.dev\flutter_pulgin_android_lifecycle-2.0.17\android 如图&#xff1a; 这种情况…

Java多线程并发篇----第十三篇

系列文章目录 文章目录 系列文章目录前言一、Semaphore 信号量二、Semaphore 与 ReentrantLock 区别三、可重入锁(递归锁)四、公平锁与非公平锁前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,…

力扣每日一练(24-1-13)

如果用列表生成式&#xff0c;可以满足输出的型式&#xff0c;但是不满足题意&#xff1a; nums[:] [i for i in nums if i ! val]return len(nums) 题意要求是&#xff1a; 你需要原地修改数组&#xff0c;并且只使用O(1)的额外空间。这意味着我们不能创建新的列表&#xff…

Asp .Net Core 系列: 集成 Consul 实现 服务注册与健康检查

文章目录 什么是 Consul?安装和运行 ConsulAsp .Net Core 如何集成 Consul 实现服务注册和健康检查Consul.AspNetCore 中的 AddConsul 和 AddConsulServiceRegistration 方法 究竟做了什么&#xff1f;AddConsul 方法AddConsulServiceRegistration 方法 配置 Consul 检查服务封…

PyTorch损失函数

一、损失函数是什么 损失函数&#xff1a;衡量模型输出与真实标签的差异 class _Loss(Module):def __init__(self, size_averageNone, reduceNone, reductionmean):"""Loss函数的基类&#xff0c;定义了一些通用的属性和方法。参数&#xff1a;- size_average…

QuEra 10,000个物理量子位和100个逻辑量子位的量子计算机2026

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

FineBI实战项目一(19):每小时订单笔数分析开发

点击新建组件&#xff0c;创建下每小时订单笔数组件。 选择饼图&#xff0c;拖拽cnt&#xff08;总数&#xff09;到角度&#xff0c;拖拽hourstr到颜色&#xff0c;调节内径。 修改现在的文字 拖拽组件到仪表盘。 效果如下&#xff1a;

泊松流生成模型简介

一、说明 泊松流生成模型 (PFGM) 是一种新型的生成深度学习模型&#xff0c;与扩散模型类似&#xff0c;其灵感来自物理学。在这本简单易懂的指南中了解 PFGM 背后的理论以及如何使用它们生成图像。 生成式人工智能模型在过去几年中取得了长足的进步。受物理启发的扩散…

element表格数据,表头上(下)角标,html字符串渲染

1. 问题描述 在动态渲染的element表格中&#xff0c;表头和表中数据是一个含有html的字符串&#xff0c;需要渲染 2. 效果 3. 代码 const columns ref([{ text: 差值<sub>-3</sub> / 10<sup>-6</sup>℃<sup>-1</sup>, value: aallowEr…

uniapp怎么开发插件并发布

今天耳机坏了,暂时内卷不了,所以想开发几个插件玩玩,也好久没写博客了,就拿这个来写了 首先,发布插件时需要你有项目 这里先拿uniapp创建一个项目, 如下,创建好的项目长这样 然后根据uniapp官网上说的,我们发布插件时,需要在uni_modules里面编写和发布 ps:还需要使用uniapp…

Redis 内存淘汰策略有哪些?过期数据如何删除?

Redis 在面试中出现的概率非常大&#xff0c;毕竟后端项目如果用到分布式缓存的话&#xff0c;一般用的都是 Redis。目前&#xff0c;还没有出现一个能够取代 Redis 的分布式缓存解决方案。 这篇文章中&#xff0c;我会分享几道 Redis 内存管理相关的问题&#xff0c;都很常见…

(分享) 音乐软件Spotify-声破天8.9.4

​【应用名称】&#xff1a;Spotify-声破天 ​【适用平台】&#xff1a;#Android ​【软件标签】&#xff1a;#Spotify ​【应用版本】&#xff1a;8.8.96 → 8.9.4 ​【应用大小】&#xff1a;67MB ​【软件说明】&#xff1a;软件升级更新。iOS可配合qx小火箭类的工具对…

什么类型的企业需要工单系统?适用场景与优势分析

在现代商业中&#xff0c;必须高效地管理与跟踪大量任务和工作流程。对一些企业而言&#xff0c;处理很多订单是一项具有挑战性的任务。此订单可能来自客户需求、内部问题反馈或各种业务流程中的任务分配。可是&#xff0c;如果没有好的解决方法&#xff0c;这类订单可能会致使…

科研绘图(四)火山图

火山图是生物信息学中常用的一种图表&#xff0c;用来显示基因表达数据的变化。它通常将每个点表示为一个基因&#xff0c;x轴显示对数比率&#xff08;log ratio&#xff09;&#xff0c;表示基因表达的变化大小&#xff1b;y轴显示-log10(p-value)&#xff0c;表示变化的统计…

极简云源码已经开源

源码介绍 极简云已经开源 解绑卡密 查询卡密 总体来说还是很完善的 对接例子网盘里有 用户注册需要配置邮箱 上网页QQ邮箱标准版开启SMTP 然后生成授权码 后台发信邮箱里填就对了 实在不会配置邮箱的 可以下载网盘里的reg.php 把reg.php上传源码里的user目录 之后注册就不需要…

【 ATU 随笔记 - Inverter 】PV Inverter 太阳能逆变器市场分析

一、简介 在上一篇的介绍中与大家分享了Micro Inverter ( 微型逆变器 )的用途与特色&#xff0c;也提到 Micro Inverter 适合家庭或是一些小型企业的需求。太阳能作为再生能源的代表&#xff0c;在当今能源转型中扮演着重要角色&#xff0c;也是有大型企业、大型能源站的需求&a…

解决JuPyter500:Internal Server Error问题

目录 一、问题描述 二、问题分析 三、解决方法 四、参考文章 一、问题描述 在启动Anaconda Prompt后&#xff0c;通过cd到项目文件夹启动Jupyter NoteBook点击.ipynb文件发生500报错。 二、问题分析 base环境下输入指令&#xff1a; jupyter --version 发现jupyter环境…

vulhub靶场之​Apache HTTPD 换行解析漏洞(CVE-2017-15715)​复现过程

Vulhub是一个基于docker和docker-compose的漏洞环境集合&#xff0c;进入对应目录并执行一条语句即可启动一个全新的漏洞环境&#xff0c;让漏洞复现变得更加简单&#xff0c;让安全研究者更加专注于漏洞原理本身。当你使用了这个靶场后你会发现真的是开箱即用&#xff0c;包括…

API(Date类,SimpleDateFormat类,Calendar类,JDK8时间相关类,包装类,算法小题)

文章目录 【常用API】今日内容教学目标 第一章 Date类1.1 Date概述1.2 Date常用方法 第二章 SimpleDateFormat类2.1 构造方法2.2 格式规则2.3 常用方法2.4 练习1(初恋女友的出生日期)2.5 练习2(秒杀活动) 第三章 Calendar类3.1 概述3.2 常用方法3.3 get方法示例3.4 set方法示例…