这个新特性是对于基本类型及其包装器说的。下面的程序:
int i = newInteger(1);
这个在JDK1.4里面是无法想象的。把一个对象赋值给一个基本类型数据?
在JDK1.4下,应该是这样的:
int i = newInteger(1).intValue();
由于J2SE5.0支持了自动拆包,所以自动将Integer对象拆包成为int类型,所以J2SE5.0下不再需要写.intValue了。
另外一个方法:
void doSth(Integer i);
调用的时候,如下写:
int i = 3;
soSth(i);
JDK1.4下午没试过,但估计是不可以的。J2SE5.0下这个可以正常编译,运行,实际上是利用了新版本的JDk的自动打包功能。自动将int类型的i打包成为Integer类型的对象。
以上,类似的对于boolean--Boolean,float--Float还有其他的基本类型及其包装器,都成立。
最后说一句雾中的狼告诉我的话:Hibernate建议使用类,而不要使用基本类型。