Java強制類型轉換注意


Java可以強制向下轉型

Java不可以強制向上或不同類型的轉型

 

但有時候也需要注意,比如:

Object obj2 = new Integer(100);

String strVal = (String)obj2;

第2個語句雖然表面上看是強制向下轉型,但是obj2本質上是Integer類型,這樣就是不同類型的轉換,從而報CalssCastException的異常。

 

使用強制類型轉換的時候,最好用instanceof做個類型檢查,以判斷是否可以轉換,否則容易拋出CalssCastException異常。

 

每個對象的類型在對象創建的時候已經確定並且不能更改,所謂強制轉換也只是使其表面上換成了另一種類型,可以使用其方法對這個對象進行處理。那么可想而知,把物品A 當成物品B來使用,當A能能夠被當成B的時候大家都相安無事,你走你的路,我過我的橋,一旦A不能被當成B,它不會去自動調用toString()方法,而是馬上就會報錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM