public class AutoBox {
public static void main(String[] args) {
//装箱:自动把一个基本数据类型装成了一个Integer对象,并附给了i(引用变量);
Integer i = 3;
//自动拆箱:i为Integer对象,不支持加法,要转换成基本数据类型才可以支持加法;
System.out.println(i + 12);
//对于这些基本数据类型的整数在一个字节内:-128~127,一旦包装成Integer对象后就会把它们缓存起来
//放在一个池中,当下次再次使用的时候就会从池子里面拿取,这样节省内存空间,因为这样小的整数使用频率比较高,
//这样不用他们每次出现都要一个对象了。以上也是一种模式:
//享元模式:很多小的对象有相同的属性,就可以将他们变成一个对象,不同的属性变成方法的参数,称为外部状态,
//相同的属性称为内部状态
Integer i1 = 12;
Integer i2 = 12;
System.out.println(i1 == i2);//true
Integer i3 = 129;
Integer i4 = 129;
System.out.println(i3 == i4);//false
}
}
基本数据的拆箱和装箱和享元模式
最新推荐文章于 2022-11-27 17:33:30 发布