看板 java 關於我們 聯絡資訊
※ 引述《TonyQ (骨頭)》之銘言: : : 0 : : 是因為Base的default constructor都會把member attribute都設成0嗎? : 應該說 int 如果沒給起始值,會自動給 0 . : : 還有如果我不加入那個showData() : : 錯的原因是因為這種Heterogeneous機制 : : Base a_base=new Derive(); : : a_base只能呼叫Base裡面的method嗎? : 因為它把a_base當成 Base類別的 instance, : 所以他只能使用Base類別裡的method, : 它的可見範圍就只有Base和 super class (Object) 裡面的東西。 : 不過你也可以透過轉型的方式使用啦, : 適不適用只端看你的使用需求。 : Base a_base; : a_base=new Derive(); : ((Derive)a_base).showData(); : 這樣就不需要加上showData在Base內了 那在請問這跟Heterogeneous機制有沒有關係? 這是後面習題 看起來跟Heter...比較像 因為我的課本是寫Heterogeneous陣列機制 範例是這樣的 class Teacher extends Person class Student extends Person Person PerArr[]=new Person[3]; PerArr[0]=new Student(); PerArr[1]=new Teacher(); PerArr[2]=new Student(); 不知道這習題是不是在考這個? 還有請問這機制有哪些重點阿? 看了半天 只知道 father class的Ref可以Ref to child class? 謝謝瞜 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.169.124.205 ※ 編輯: walm20 來自: 218.169.124.205 (03/31 23:13)