当前位置: 首页 > news >正文

idea生成类信息及快捷开发配置

目录

一、预言 

二、在Java类的开头自动注释作者名字和日期等信息 

2.1.各种预设变量 

2.2.idea配置

2.3.成品展示

三、快捷开发 

3.1.三种循环热键 

3.2.if判断 

3.3.instanceof运算 

3.4.非空判断 

3.5.测试打印 

3.6. synchronized

3.7.异常抛出 


一、预言 

在阿里巴巴开发规范一文中,介绍了如何添加插件,使得开发更规范。在添加完毕后,进行代码扫描,可以发现各种问题。如下图所示,在上面第一条,生成所有的类都必须添加创建者信息

        实际生产中,创建者信息可以如下图所示。但我这个是通过MP框架自动生成的,那如何通过idea设置自动生成呢

二、在Java类的开头自动注释作者名字和日期等信息 

2.1.各种预设变量 

 

2.2.idea配置

/**
* @Author: BLUE BLUE
* @Package: ${PACKAGE_NAME}
* @Project: ${PROJECT_NAME}
* @name : ${NAME}
* @Date: ${DATE} ${TIME}
* @Description: 
*/

        idea:File--->Settings--->Editor--->Code Style--->File and Code Templates,按下图所示

        注意一:⑤File Header 是系统默认模版组,因此在进行操作⑥以后,可以不勾选⑦。 

图 2.2.1

       从下图可以看到,Class对应的模版是“File Header.java”,这刚好与上图中模版组对应,那么在生成类时,将自动应用模版。同时,除了Class类外,还有Interface接口,Enum枚举等等,应用的都是该模版,如果想让不同的类应用不同的模版,则需要新增模版

图 2.2.2

        注意二: 上面提到新增模版,下面就是介绍新增模版流程。从下图 图2.2.3中可以看到,⑤的Name对应的是模版名称,后面的Extension对应的是拓展名是java,这也解释了图2.2.2中File Header.java中,java的由来。

图 2.2.3

2.3.成品展示

        Description为自定义信息,一般用于介绍类作用,或者一些其他的类信息说明,可删。 

三、快捷开发 

        除了上面介绍的用于规范开发的配置,还有一些用于快速开发的快捷键,由于种类太多,就不做意义介绍了,只简要展示几个 

3.1.三种循环热键 

3.2.if判断 

3.3.instanceof运算 

        instanceof是Java的一个二元操作符(运算符)。它的作用是判断其左边对象是否为其右边类的实例,返回boolean类型的数据。

        上面代码的完整示例,可如下所示: 

public class Test {public HashMap m(Object o) {HashMap hashMap = o instanceof HashMap ? ((HashMap) o) : null;return hashMap;}
}

3.4.非空判断 

3.5.测试打印 

3.6. synchronized

        synchronized是Java语言中的一个关键字,它代表方法加锁,用于解决多个线程之间访问资源的同步性问题。synchronized的作用是保证在同一时刻,被修饰的代码块或方法只会有一个线程执行,以达到保证并发安全的效果。 

3.7.异常抛出 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • PHP邮件发送教程:如何用PHP发送电子邮件?
  • SQLServer TOP(Transact-SQL)
  • 隨著 iOS 18 到來,AirPods Pro 2 解鎖移動頭部回應 Siri 功能
  • 【PyQt5】object属性
  • 2023年全国研究生数学建模竞赛华为杯B题DFT类矩阵的整数分解逼近求解全过程文档及程序
  • idea多模块启动
  • 【北京迅为】《STM32MP157开发板使用手册》- 第三十九章 消息队列实验
  • k8s常用指令续:
  • 避免死锁发生的策略
  • 240919-Pip先在线下载不安装+再离线安装
  • AI助力智慧农田作物病虫害监测,基于YOLOv8全系列【n/s/m/l/x】参数模型开发构建花田作物种植场景下棉花作物常见病虫害检测识别系统
  • 一道涉及 Go 中的并发安全和数据竞态(Race Condition)控制的难题
  • 【Kubernetes】常见面试题汇总(十八)
  • 对目录的操作、获取文件信息
  • [PTA]7-6 整数分解为若干项之和
  • [译] 怎样写一个基础的编译器
  • CSS中外联样式表代表的含义
  • C语言笔记(第一章:C语言编程)
  • Java|序列化异常StreamCorruptedException的解决方法
  • java2019面试题北京
  • Java程序员幽默爆笑锦集
  • vue 配置sass、scss全局变量
  • vuex 学习笔记 01
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 彻底搞懂浏览器Event-loop
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • ------- 计算机网络基础
  • 排序算法学习笔记
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • gunicorn工作原理
  • Unity3D - 异步加载游戏场景与异步加载游戏资源进度条 ...
  • 选择阿里云数据库HBase版十大理由
  • ​批处理文件中的errorlevel用法
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (16)Reactor的测试——响应式Spring的道法术器
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (Java数据结构)ArrayList
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (接口封装)
  • (一)Java算法:二分查找
  • (原)本想说脏话,奈何已放下
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • .NET HttpWebRequest、WebClient、HttpClient
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • .NET项目中存在多个web.config文件时的加载顺序
  • .NET中使用Protobuffer 实现序列化和反序列化
  • @TableLogic注解说明,以及对增删改查的影响
  • [ C++ ] STL---仿函数与priority_queue
  • []error LNK2001: unresolved external symbol _m
  • [10] CUDA程序性能的提升 与 流
  • [20170728]oracle保留字.txt