在 Java 中,“不可变(Immutable)”通常指对象创建后其状态(字段值)不能被修改,例如 String、Integer、LocalDate 等。不可变对象在设计和并发编程中有很多明显优势:
String s = "hello";
多个线程同时使用 s,不会有任何同步问题。
void print(String s) {
// 不用担心 s 被外部修改
}
HashMap、HashSet 依赖 hashCode() 和 equals()✅ String 常用作 Key,正是因为它不可变
Integer.valueOf(1) 使用常量池Integer a = Integer.valueOf(100);
Integer b = Integer.valueOf(100);
// a == b 为 true
LocalDate next = date.plusDays(1);
StringBuilder 缓解Java 中不可变对象 = 线程安全 + 简单可靠 + 高性能缓存
如果你愿意,我也可以:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。