IntelliJ IDEA 如何优雅的添加文档注释(附详细图解)

IntelliJ IDEA 如何优雅的添加文档注释(附详细图解)

  • 📌提要
  • ✍✍类注释
  • ✍✍方法注释

📌提要


在开发过程中,最常用的注释有两种:类注释方法注释,分别是为类和方法添加作者、日期、版本号、描述等一系列信息,增强代码的可读性,保证代码的可维护性,但通常一个项目中有数不清的类和方法,手动添加未免过于繁杂,如何有效、便捷地添加注释呢?

在这里插入图片描述

✍✍类注释


✨类注释可以通过修改文件和代码模板实现,在新建文件时自动添加类注释,具体实现效果如下:

1.打开IntelliJ IDEA,依次点击File > Settings > Editor > File and Code Templates > Files,可以看到各类文件的新建默认格式模板

在这里插入图片描述

2.此处以class文件为例,在右侧编辑栏中直接根据需要进行添加(注意不要把原本信息覆盖),笔者模板如下:

在这里插入图片描述

/**
 * @Author:     Insight
 * @Description:  TODO  
 * @Date:    ${DATE} ${TIME}
 * @Version:    1.0
 */ 

注:
1️⃣其它类型的文件可根据自己的需要进行修改。
2️⃣${} 中的值代表变量,支持的变量如下:

变量名含义
${PACKAGE_NAME}当前新建文件的包名
${NAME}新建文件时指定的文件名
${USER}当前登录用户昵称
${DATE}当前系统日期
${TIME}当前系统时间
${YEAR}当前系统年份
${MONTH}当前系统月份
${MONTH_NAME_SHORT}当前系统月份缩写(Jan、Feb…)
${MONTH_NAME_FULL}当前系统月份全拼 (January, February…)
${DAY}当前系统日份
${HOUR}当前系统时间(时)
${MINUTE}当前系统时间(分)
${PROJECT_NAME}项目名称

3.在项目中新建文件即可自动添加注释

请添加图片描述

✍✍方法注释


方法注释没有系统模板的支持,无法自动添加,但可以通过自定义用户模板进行快捷添加

1.打开IntelliJ IDEA,依次点击File > Settings > Editor > Live Templates,点击右上角 + ,选择Live Template,创建一个用户自定义模板

在这里插入图片描述

2.根据需要填写Abbreviation(后续的引用需要使用)、Description(选填)、Text(可参考下方模板)

在这里插入图片描述

笔者方法注释模板
注:对于变量使用"$$"包裹

*
  * @Author Insight
  * @Date $date$ $time$
  * @Description This is description of method
  * @Param $param$
  * @Return $return$
  * @Since version 1.0
  */

3.对模板中的变量赋值,保证变量的动态修改

在这里插入图片描述

4.修改方法注释作用域为所有Java文件

在这里插入图片描述

5.在.java文件中输入/*m(m为注释缩写),点击tab,方法注释自动生成

请添加图片描述


💕至此,我们就可以优雅地添加注释了!创作不易,点个赞吧~

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ensp-GVRP服务

ensp-GVRP服务 日期:6-26 📎GVRP实验.zip📎GVRP服务.docx

【云原生|Docker系列第3篇】Docker镜像的入门实践

欢迎来到Docker入门系列的第三篇博客!在前两篇博客中,我们已经了解了什么是Docker以及如何安装和配置它。本篇博客将重点介绍Docker镜像的概念,以及它们之间的关系。我们还将学习如何拉取、创建、管理和分享Docker镜像,这是使用Do…

从8个新 NFT AMM,聊聊能如何为 NFT 提供流动性

DeFi 的出现,开启了数字金融民主化的革命。其中,通过 AMM 自由创建流动性池极大地增加了 ERC-20 Token 的流动性,并为一些长尾 Token 解锁了价值的发现,因而今天在链上可以看到各种丰富的交易、借贷和杠杆等活动。 而另一方面&am…

angular-mat-select 多选 实现按选择顺序排序

mat-select 正常情况下,多选后,已选项是按列表顺序进行排序,如果我想实现按照点击项目的顺序进行排序,我该如何做呢? [参考网址](Angular order of selected option in multiple mat-select - Stack Overflow) sortComparator是Angular Material中mat-select组件的一个属…

无涯教程-Lua - 垃圾回收

Lua使用自动内存管理,该管理使用基于Lua内置的某些算法的垃圾回收。 垃圾收集器暂停 垃圾收集器暂停用于控制垃圾收集器之前需要等待多长时间; Lua的自动内存管理再次调用它。值小于100意味着Lua将不等待下一个周期。同样,此值的较高值将导…

Golang之路---04 并发编程——信道/通道

信道/通道 如果说 goroutine 是 Go语言程序的并发体的话,那么 channel(信道) 就是 它们之间的通信机制。channel,是一个可以让一个 goroutine 与另一个 goroutine 传输信息的通道,我把他叫做信道,也有人将…

.Net6 Web Core API --- Autofac -- AOP

目录 一、AOP 封装 二、类拦截 案例 三、接口拦截器 案例 AOP拦截器 可开启 类拦截器 和 接口拦截器 类拦截器 --- 只有方法标注 virtual 标识才会启动 接口拦截器 --- 所有实现接口的方法都会启动 一、AOP 封装 // 在 Program.cs 配置 builder.AddAOPExt();//自定义 A…

java使用openOffice将excel转换pdf时,将所有列显示在一页

1.接上文,格式转换的基础问题已解决,但还有些细节问题需要单独处理,如excel转换至pdf时,如何将所有列显示在一页的问题,此问题大家都有遇到,解决方案也比较多,我也尝试过重写某类,来…

从excel中提取嵌入式图片的解决方法

1 发现问题 我的excel中有浮动图片和嵌入式图片,但是openpyxl的_image对象只提取到了浮动图片,通过阅读其源码发现,这是因为openpyxl只解析了drawing文件导致的,所以确定需要自己解析 2 解决思路 1、解析出media资源 2、解析…

eclipse Java Editor Templates

​ Window - Preferences - Java - Editor - Templates ​ date ${currentDate:date(yyyy.MM.dd)}

W6100-EVB-PICO做DNS Client进行域名解析(四)

前言 在上一章节中我们用W6100-EVB-PICO通过dhcp获取ip地址(网关,子网掩码,dns服务器)等信息,给我们的开发板配置网络信息,成功的接入网络中,那么本章将教大家如何让我们的开发板进行DNS域名解…

使用 OpenCV 和 Python 卡通化图像-附源码

介绍 在本文中,我们将构建一个有趣的应用程序,它将卡通化提供给它的图像。为了构建这个卡通化器应用程序,我们将使用 python 和 OpenCV。这是机器学习令人兴奋的应用之一。在构建此应用程序时,我们还将了解如何使用 easygui、Tkinter 等库。在这里,您必须选择图像,然后应…

(亲测解决)PyCharm 从目录下导包提示 unresolved reference(完整图解)

最近在进行一个Flask项目的过程中遇到了unresolved reference 包名的问题,在网上找了好久解决方案,并没有一个能让我一步到位解决问题的。 后来,我对该问题和网上的解决方案进行了分析,发现网上大多数都是针对项目同一目录下的py…

变压器参数测定中空载实验和短路实验的理解

确定变压器的参数是在《电机学》和《电力系统分析》中非常重要的一个环节,这里用自己习惯的方式讲一下怎样理解 首先要讲下变压器的额定参数,这个也是个常考的知识点 额定功率,即视在功率,电压电流,单位是VA或者kVA额…

K8s工作原理

K8s title: Kubernetes之初探 subtitle: K8s的工作原理 date: 2018-09-18 18:26:37K8s概述 我清晰地记得曾经读到过的一篇博文,上面是这样写的, “云端教父AWS云端架构策略副总裁Adrian Cockcroft曾指出,两者虽然都是运用容器技术&#xff0…

Vue中,$forceUpdate()的使用

在Vue官方文档中指出,$forceUpdate具有强制刷新的作用。 那在vue框架中,如果data中有一个变量:age,修改他,页面会自动更新。 但如果data中的变量为数组或对象,我们直接去给某个对象或数组添加属性,页面是识…

剑指 Offer 53 - I. 在排序数组中查找数字 I

题目描述 统计一个数字在排序数组中出现的次数。示例 思路 1、暴力法 注意while循环中先判断数组是否越界再判断其值是否相等 class Solution {public int search(int[] nums, int target) {int count 0;for(int i 0; i < nums.length; i) {if(nums[i] target) {whil…

谷粒商城第九天-解决商品品牌问题以及前后端使用检验框架检验参数

目录 一、总述 二、商品分类问题 三、前端检验 四、后端检验 五、总结 一、总述 在完成完商品分类的时候&#xff0c;后来测试的时候还是发现了一些问题&#xff0c;现在将其进行解决&#xff0c;问题如下&#xff1a; 1. 取消显示的时候&#xff0c;如果取消了显示&…

java-IDEA MAVEN查看依赖树,解决jar包重复和冲突

如果这里面的依赖关系有红线,就说明有包冲突,一般都是版本不一致,可以在idea里下一个插件Maven Helper,点击install并重启IDEA 打开pom.xml文件&#xff0c;在下方会出现Dependency Analyzer&#xff0c;选择它会出现重复依赖列表&#xff0c;选择对应的依赖&#xff0c;右键红…

【小沐学前端】VuePress制作在线电子书、技术文档(VuePress + Markdown + node)

文章目录 1、简介1.1 VuePress简介1.2 它是如何工作的&#xff1f; 2、安装node3、安装VuePress4、配置VuePress4.1 修改标题4.2 修改导航条4.3 修改右侧栏4.4 修改正文 结语 1、简介 Vue驱动的静态网站生成器&#xff0c;生成的网页内容放到自己服务器上管理&#xff0c;可用于…