Java能夠強制向下轉型對象
Java不能夠強制向上或不一樣類型的轉型io
但有時候也須要注意,好比:ast
Object obj2 = new Integer(100);方法
String strVal = (String)obj2;異常
第2個語句雖然表面上看是強制向下轉型,可是obj2本質上是Integer類型,這樣就是不一樣類型的轉換,從而報CalssCastException的異常。類型轉換
使用強制類型轉換的時候,最好用instanceof作個類型檢查,以判斷是否能夠轉換,不然容易拋出CalssCastException異常。new
每一個對象的類型在對象建立的時候已經肯定而且不能更改,所謂強制轉換也只是使其表面上換成了另外一種類型,能夠使用其方法對這個對象進行處理。那麼可想而知,把物品A 當成物品B來使用,當A能可以被當成B的時候你們都相安無事,你走你的路,我過個人橋,一旦A不能被當成B,它不會去自動調用toString()方法,而是立刻就會報錯。