IDEA的常用设置
✨IDEA的常用设置✨
版本号




🎉【1】进入设置:🎉



🎊【2】设置主题:🎊

注意:设置完成后点击Apply 应用即可

🎄 【3】编辑区的字体变大或者变小:🎄


🥕【4】鼠标悬浮在代码上有提示:🥕



🎶【5】自动导包和优化多余的包:🎶
手动导包快捷键 Alt+Enter


自动导包


🍦【6】同一个包下的类,超过指定个数的时候,导包合并为*🍦




🎈【7】显示行号,方法和方法间的分隔符:🎈


🐱🏍【8】忽略大小写,进行提示:🐱🏍
2024版演示


🧧【9】多个类不隐藏,多行显示:🧧



🛒【10】设置默认的字体,字体大小,字体行间距:🛒编辑区 && 控制台 都会变化


也可以 编辑区 控制台 分开来 单独设置

🎑【11】修改代码中注释的字体颜色:🎑


🧨【12】修改类头的文档注释信息:🧨
/**
@Auther:ZhengranChou
@Date:${DATE}-${MONTH}-${DAY}-${TIME}
@Description:${PACKAGENAME}
@version:1.0
*/


🎡【13】设置项目文件编码:🎡

右下角可以自主选择编码格式

🎀【14】自动编译:🎀
情景描述:
在日常开发中,我们通常会编写 .java 源文件,并通过编译器将其转换为字节码文件 .class,随后在 JVM 中运行这些字节码文件以生成最终的程序结果。
假设你正在使用一个集成开发环境(IDE),比如 IntelliJ IDEA。当你第一次右键运行某个源文件时,IDE 会自动完成以下步骤:
- 编译:将
.java文件编译为对应的.class字节码文件,通常存储在项目的out文件夹中。 - 运行:加载
out文件夹中的字节码文件到 JVM 中执行,生成运行结果。
然而,问题出现在后续开发过程中。如果你对源文件进行了修改,但尚未重新运行程序,此时 out 文件夹中的字节码文件可能仍然是旧版本的。这意味着,如果直接使用现有的字节码文件运行程序,你的修改将不会生效,导致程序行为与预期不符。
为了解决这一问题,我们需要启用 IDE 的 自动编译功能。具体来说,当开发者完成对源代码的修改后,IDEA 会在后台自动触发编译过程,生成最新的字节码文件,而无需等待手动运行操作。这样一来,无论是否立即运行程序,out 文件夹中的字节码文件始终是最新的,确保了程序逻辑的一致性和准确性。
通过这种方式,开发者可以专注于代码的编写和调试,而不必担心因字节码未及时更新而导致的问题。整个开发流程更加高效、流畅。

🩲【15】省电模式:🩲
代码检查 代码提示功能没有了 看看是不是进入了省电模式
2024版本


💎【16】代码显示结构:💎


🎠【17】导入jar包:🎠

🎢【18】生成序列化版本号:🎢
场景描述
假设我们正在开发一个学生管理系统,需要将学生对象保存到本地文件中以便后续读取。为了实现这一功能,我们需要创建一个 Student 类,并让其实现 Serializable 接口。同时,为了让序列化机制更加稳定,我们需要为该类定义一个序列化版本号(serialVersionUID),而这个版本号可以通过 IDEA 自动生成。
代码实现
1. 创建 Student 类
import java.io.Serializable;
public class Student implements Serializable {
private static final long serialVersionUID = 1L; // 这里是序列化版本号
private String name;
private int age;
private String major;
// 构造方法
public Student(String name, int age, String major) {
this.name = name;
this.age = age;
this.major = major;
}
// Getter 和 Setter 方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
@Override
public String toString() {
return "Student{name='" + name + "', age=" + age + ", major='" + major + "'}";
}
}
2. 使用 IDEA 自动生成 serialVersionUID



- 在 IDEA 中,当你让一个类实现
Serializable接口时,IDE 会提示你生成serialVersionUID。 - 具体步骤:
- 将光标放在类名上。
- 按下
Alt + Enter(Windows/Linux)或Option + Enter(Mac)。 - 选择 "Add 'serialVersionUID' field"。
- IDEA 会自动生成一个唯一的
serialVersionUID值。
例如,IDEA 可能生成如下内容:
private static final long serialVersionUID = -6487564798264758274L;
3. 编写序列化与反序列化的代码
import java.io.*;
public class SerializationExample {
public static void main(String[] args) {
// 创建一个 Student 对象
Student student = new Student("张三", 20, "计算机科学");
// 序列化:将对象保存到本地文件
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("student.ser"))) {
oos.writeObject(student);
System.out.println("对象已成功序列化并保存到文件!");
} catch (IOException e) {
e.printStackTrace();
}
// 反序列化:从本地文件读取对象
try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("student.ser"))) {
Student deserializedStudent = (Student) ois.readObject();
System.out.println("从文件中读取的对象:" + deserializedStudent);
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
}
运行结果
- 当程序运行时,首先会将
Student对象序列化并保存到名为student.ser的文件中。 - 然后程序会从该文件中读取对象并打印其内容。
输出示例:
对象已成功序列化并保存到文件!
从文件中读取的对象:Student{name='张三', age=20, major='计算机科学'}
注意事项
- 为什么需要
serialVersionUID?serialVersionUID是用于验证序列化类的版本一致性。如果序列化后的类被修改(如添加字段或删除字段),反序列化时可能会报错。通过显式定义serialVersionUID,可以避免因类版本不一致导致的问题。
- IDEA 自动生成的
serialVersionUID是否可靠?- IDEA 根据类的结构计算出一个哈希值作为
serialVersionUID,因此它是可靠的。但如果你手动修改了类的结构,记得重新生成或调整serialVersionUID。
- IDEA 根据类的结构计算出一个哈希值作为
浙公网安备 33010602011771号