IntelliJ IDEA中初始化Java类的常用快捷方法详解

 更新时间:2026年02月11日 09:03:38   作者:悟能不能悟  
这篇文章主要为大家详细介绍了IntelliJ IDEA中初始化Java类并设置所有属性的常用快捷方法,文中的示例代码讲解详细,需要的小伙伴可以参考下

在 IntelliJ IDEA 中初始化 Java 类并设置所有属性的几种快捷方法:

1.快速创建对象并调用 setter

方法一:使用.var后缀自动生成变量

// 输入以下内容后按 Tab
new User()   // 然后按 .var
// IDEA 会生成:
User user = new User();

// 或者直接输入:
new User().var

方法二:通过构造函数初始化

// 1. 输入类名后:
User user = new User(
// 2. 按 Ctrl+P 查看构造函数参数提示
// 3. 如果已有构造函数,IDEA 会自动提示参数

2.快速生成对象初始化代码块

使用 "Alt+Insert" 生成构造函数调用

// 在需要创建对象的地方
Alt + Insert → 选择 Constructor
// 然后选择要使用的构造函数

3.通过.new快速创建对象

// 输入类名后:
User.
// 然后按 Ctrl+Space 查看静态方法
// 如果有静态工厂方法,可以选择

4.使用 GenerateAllSetter 插件(强烈推荐)

这是一个专门用于快速初始化对象的插件:

安装插件

Settings → Plugins → Marketplace

搜索 "GenerateAllSetter" 并安装

使用方式

// 1. 先创建对象
User user = new User();

// 2. 在 user 上按 Alt+Enter
// 3. 选择 "Generate all setter with default value"
// 4. 插件会自动生成所有 setter 调用

生成结果:

User user = new User();
user.setName("");
user.setAge(0);
user.setEmail("");
// 所有属性都已设置默认值

高级用法

Alt+Enter 后可以选择:

1. Generate all setter with default value

2. Generate all setter with 'null'

3. Generate all setter with '""' (字符串用空字符串)

4. Generate all setter with '0' (数值用0)

5.快速生成 Builder 模式初始化

如果类使用了 Lombok @Builder:

// 输入:
User.builder()   // 然后 .var
// 生成:
User user = User.builder()
    .name("")
    .age(0)
    .email("")
    .build();

// 或者使用 .builder
User.builder().builder

6.通过测试快速生成

// 在测试类中
@Test
public void testUser() {
    // 输入:
    User user = new User();
    // 然后在 user 上按 Alt+Enter
    // 选择 "Generate setter calls for properties"
}

7.使用自定义 Live Template

创建快速初始化的模板:

Settings → Editor → Live Templates

创建新模板,例如 "initobj"

// 模板文本:
$CLASS$ $OBJ$ = new $CLASS$();
$END$
// 设置变量

设置快捷键:比如 init

8.链式调用快速补全

User user = new User()
    .setName("")  // 输入 .set 后按 Ctrl+Space
    .setAge(0)    // IDEA 会自动提示可用的 setter
    .setEmail("");

9.通过 Alt+Enter 生成构造函数调用

// 输入类名
User
// 然后按 Alt+Enter
// 选择 "Create constructor matching super"
// 或者 "Create missing constructor"

10.快速创建 Map 到对象的转换

Map<String, Object> map = new HashMap<>();
map.put("name", "张三");
map.put("age", 25);

// 在 map 上按 Alt+Enter
// 选择 "Convert to object" (需要插件支持)

11.实用示例

示例 1:使用 GenerateAllSetter

// 创建对象
User user = new User();

// 按 Alt+Enter,选择 "Generate all setter with default value"
// 结果:
User user = new User();
user.setId(0L);
user.setUsername("");
user.setPassword("");
user.setEmail("");
user.setCreatedAt(null);

示例 2:链式调用

// 如果类支持链式调用(@Accessors(chain = true))
User user = new User()
    .setName("").setAge(0).setEmail("");
// 可以连续调用

12.最佳实践建议

安装 GenerateAllSetter 插件​ - 这是最快的方法

使用 Lombok @Builder​ - 最优雅的方式

创建自定义模板​ - 针对常用类

13.快捷键总结

操作快捷键
自动生成变量.var+ Tab
查看构造函数参数Ctrl+P
代码补全Ctrl+Space
快速修复/生成Alt+Enter
生成代码Alt+Insert

最快捷的方式:安装 GenerateAllSetter​ 插件,然后:

  • 创建对象:User user = new User();
  • 光标放在 user
  • Alt+Enter
  • 选择生成选项

到此这篇关于IntelliJ IDEA中初始化Java类的常用快捷方法详解的文章就介绍到这了,更多相关IntelliJ IDEA初始化Java类内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java 普通代码块静态代码块执行顺序(实例讲解)

    Java 普通代码块静态代码块执行顺序(实例讲解)

    下面小编就为大家带来一篇Java 普通代码块静态代码块执行顺序(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Java安全之Mojarra JSF反序列化讲解

    Java安全之Mojarra JSF反序列化讲解

    JSF 和类似的 Web 技术之间的区别在于 JSF 使用 ViewStates(除了会话)来存储视图的当前状态(例如,当前应该显示视图的哪些部分),这篇文章主要介绍了Java安全之Mojarra JSF反序列化知识讲解,包括漏洞复现和漏洞分析,需要的朋友可以参考下
    2022-11-11
  • Java中使用While语句自增运算遍历数组典型实例

    Java中使用While语句自增运算遍历数组典型实例

    这篇文章主要介绍了Java中使用While语句自增运算遍历数组典型实例,本文直接给出实例代码,并对每一句代码都注解了详细注释,需要的朋友可以参考下
    2015-06-06
  • springboot实现mock平台的示例代码

    springboot实现mock平台的示例代码

    本文主要介绍了springboot实现mock平台的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Springboot接收文件报错Required request part‘file‘is not present问题分析及解决

    Springboot接收文件报错Required request part‘file‘is 

    文章总结:在Flutter和Vue项目中遇到文件上传问题,后端接口Controller定义无误,但前端通过FormData封装上传文件时报错,通过浏览器抓包和PostMan测试,发现后台确实可以接收参数,最终通过修改封装的file为file.raw解决问题,解决了文件上传不成功的问题
    2025-12-12
  • Java中的事件处理机制详细解读

    Java中的事件处理机制详细解读

    这篇文章主要介绍了Java中的事件处理机制详细解读,ava事件处理是采取"委派事件模型",当事件发生时,产生事件的对象会把此"信息"传递给"事件的监听者"处理,需要的朋友可以参考下
    2024-01-01
  • java使用Filter实现自动登录的方法

    java使用Filter实现自动登录的方法

    这篇文章主要为大家详细介绍了java使用Filter实现自动登录的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • SpringBoot中Fat Jar的三种打包方式详解

    SpringBoot中Fat Jar的三种打包方式详解

    Spring Boot开发中,打包是将应用及其所有依赖整合到一个可执行文件中的过程,这种包含所有依赖的jar文件通常被称为"Fat Jar",下面我们来看看SpringBoot打包Fat Jar的三种方式吧
    2025-06-06
  • 学习spring事务与消息队列

    学习spring事务与消息队列

    这篇文章主要为大家详细介绍了spring事务与消息队列,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • Java实战之多线程模拟站点售票

    Java实战之多线程模拟站点售票

    今天带大家来练习Java实战,文中多线程模拟站点售票这个问题作了详细的介绍,对正在学习java的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05

最新评论