對不起,這個可怕的問題,不知道怎麼形容,這個Java構造是什麼意思 - OneClass對象=(OneClass)anotherObject;
我自然是一個PHPer,我目前正在查看一些java,並遇到此部分。第一行是剛剛在那裏背景下,開始QuotaKey,我很感興趣,就行了。
Key key = Keys.getKeyInstance(Keys.getKeyClass(cond.getKey()));
QuotaKey quotaKey = (QuotaKey) key;
對不起,這個可怕的問題,不知道怎麼形容,這個Java構造是什麼意思 - OneClass對象=(OneClass)anotherObject;
我自然是一個PHPer,我目前正在查看一些java,並遇到此部分。第一行是剛剛在那裏背景下,開始QuotaKey,我很感興趣,就行了。
Key key = Keys.getKeyInstance(Keys.getKeyClass(cond.getKey()));
QuotaKey quotaKey = (QuotaKey) key;
假設QuotaKey
是Key
一個子類,你正在尋找一個轉換運算符的類型Key
的變量轉換爲QuotaKey
類型的變量。你可以更簡潔地寫相同的片段沒有一個臨時變量:
QuotaKey quotaKey = (QuotaKey)Keys.getKeyInstance(Keys.getKeyClass(cond.getKey()));
此操作將檢查key
在強迫其類型設置爲子之前是正確的類型,並在故障造成ClassCastException
。在程序中最大限度地減少此類強制轉換的次數,因爲在編譯時無法可靠地檢查其有效性。
這是一個演員,把一個Key
成QuotaKey
。
http://www.javabeginner.com/learn-java/java-object-typecasting
謝謝,事後看來,它是盲目明顯的。我正在尋找更復雜的東西。 –
這是一個演員。它將密鑰的類型強制轉換爲QuotaKey。
你正在尋找被稱爲類型轉換(在這種特殊情況下向下轉換)是什麼,它只是使用QuotaKey
類型的變量,我以爲是一個超類或QuotaKey
超接口Key
類型的參考。
[Casting Objects](http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html) –
爲什麼downvotes?對我來說似乎是一個合法和誠實的問題。 –
如果有人能給我一個更好的標題,或問題的話,所以這對別人有用 - 我會很樂意修改 –