包装类

包装类

java对于8个基本类型分别定义了对应的包装类,而包装类出现的原因是为了解决基本类型不能参与面向对象的开发问题。
java的8个基本类型:byte,short,int,long,float,double,char,boolean是以值的形式直接存在的,所以他们并没有面向对象的特性,自然也不继承Object.所以不能使用多态,用Object的角度去接受基本类型。
数字类型的包装类继承自Number,其提供了如:intValue,doubleValue这样的方法,作用是可以将当前包装类表示的数字以其他数字类型的形式返回。
包装类提供了一个静态方法parseXXX(String str),可以将给定的字符串转换为对应的基本类型。前提是该字符串必须正确的描述基本类型可以保存的值。

自动拆装箱

自动拆装箱是编译器认可,而不是虚拟机认可。
编译器再将源程序编译时自动补充代码来完成基本类型与包装类之间的转换。
eg:

/*
 * 下面代码触发了自动装箱:
 * 在class文件中,下面的代码被编译器改为:
 * int i = new Integer(1).intValue();
*/
int i = new Integer(1);
/*
 * 下面代码触发了自动装箱:
 * 在class文件中,下面代码被编译器改为:
 * Integer ii = Integer.valueOf(123);
*/
Integer ii = 123;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值