[英]Java compilation question regarding casting
如果我有兩個彼此不相關的對象。 在以下情況下會發生什么:我們有:對象A,對象B
A a = new A();
B b = new B();
- a = b; \\會編譯嗎? 我會例外嗎?
- a =(A)b; \\會編譯嗎? 之后-我會例外嗎?
兩者都不會編譯,在第二種情況下,只有在編譯器可以檢查類型的情況下,因此,如果您首先通過Object,您將能夠在運行時進行強制轉換並獲取異常
如果兩個對象不相關,則您將無法將一個對象轉換為另一個對象。 1.不會編譯。 2.將編譯,但在運行時將引發異常。
如果一個對象是從另一個對象繼承的,則可以將一個對象轉換為另一個對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.