java.lang.Integer原理解析

本文深入探讨了Java中的Integer对象创建,包括语法糖的原理,即编译器如何进行自动装箱和拆箱操作。分析了Integer构造方法和`Integer.valueOf()`的源码,揭示了`Integer.valueOf()`在[-128, 127]区间内缓存对象以避免重复创建的机制。最后,总结了构造方法与`Integer.valueOf()`创建对象的区别以及`Integer.valueOf()`创建对象的适用区间。" 90289921,7316485,MFC程序中使用API自动注册/卸载OCX控件,"['MFC开发', 'API调用', 'OCX', 'Windows编程']
摘要由CSDN通过智能技术生成

Integer原理解析

1、语法糖

Integer是java对int基本类型的一个封装类型,主要封装了一些整型的经常会使用到的方法,在日常开发中使用Integer主要有种创建对象的方式:

Integer a=1;
Integer b=new Integer(2);
Integer c=Integer.valueOf(3);

前一种较为常见,后两种看似更符合java语法的概念,众所周知,java类型分为基本类型和对象类型两种,基本类型为char,int,double等,对象类型有jdk对象和自己创建的对象,所以Integer属于对象类型,int属于基本类型,对jvm而言,类似于Integer a=1这种将基本类型赋值给对象类型的操作是不允许的,但是在日常开发过程中使用这种创建对象的方式并不会报错,原因是编译器的语法糖技术,(语法糖是指在不改变jvm语法的情况下,用于方便编程人员编码的操作)。

其原理为:

在编译阶段,编译器在检测到该语句的时候,会自动将该行代码转换成

Integer a=1;//编译前代码
Integer a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值