ToB企服应用市场:ToB评测及商务社交产业平台

标题: 为什么说不变模式可以提高性能 [打印本页]

作者: 干翻全岛蛙蛙    时间: 2022-8-22 16:12
标题: 为什么说不变模式可以提高性能
在Java中基础类型的包装类都是不可变的类,如Boolean、Byte、Character、Double、Float、Integer、Long、Short,另外还有String。
这些类创建的实例都是不可以变的实例。
  1. //Integer类代码 JDK1.8
  2. public final class Integer extends Number implements Comparable<Integer> {
  3.         private final int value;
  4.         public Integer(int value) {
  5.                 this.value = value;
  6.         }
复制代码
可以看到Integer类是final类型的不可被继承,其封装的int值是也是final的。这就导致了实例创建后我们没有其他办法去修改这个int值,所以说Integer对象是不可变对象。
那不可变对象又是如何提高性能的呢,这里看Integer的valueOf方法。
[code]    public static Integer valueOf(int i) {        if (i >= IntegerCache.low && i




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4