[OCAJP][OCPJP]物件轉型


Given:

What is the result?

A.

Ym
Xm2

B.

Ym
Xm1

C. Compilation fails
D. A ClassCastException is thrown at runtime

題解

程式第22行,將Y物件實體的參考指派給X型態的變數儲存,由於Y類別繼承X類別,隱含(implicit)式的向上轉型是可以的。

程式第23行,將X型態的變數用顯性(explicit)的方式向下轉型成Y型態,X變數所參考的物件為Y物件,因此這個轉型也是可以的。

再來第24,25行,執行Y物件於第14行的mY方法和第10行mX方法。因此分別印出「Ym」和「Xm2」。

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章