這個新特性是對于基本類型及其包裝器說的。下面的程序:
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);
soSth(i);
?
JDK1.4下午沒試過,但估計是不可以的。J2SE5.0下這個可以正常編譯,運行,實際上是利用了新版本的JDk的自動打包功能。自動將int類型的i打包成為Integer類型的對象。
以上,類似的對于boolean--Boolean,float--Float還有其他的基本類型及其包裝器,都成立。
?
最后說一句霧中的狼告訴我的話:Hibernate建議使用類,而不要使用基本類型。