看板 java 關於我們 聯絡資訊
嗯, 之前剛好有練習過, 憑藉印象寫一下. interface type { public String myType(); } class A implements type { private String name; //好古板的寫法=..= public A (String n){name=n;} public Stirng myType(){return name;} } class B implements type { private String name; //好古板的寫法=..= public B (String n){name=n;} public Stirng myType(){return name;} } public class main { public static void main(String args[]) { print(new A("A")); print(new B("B")); } public static void print(type t) { System.out.println(t.myType()); } } 大概是這種感覺, 我剛剛試過, 是可以執行的. (雖然第一次 有出錯, 沒有靠IDE果然容易打錯一些字Orz) ※ 引述《choYM (肉羹麵冰沙)》之銘言: : 引述《choYM (肉羹麵冰沙)》之銘言: : 會想問這個問題是因為要用多型沒錯,指示好像還是有點問題.. : class cls_A { : public char ch_o; : public void getChar() { : return ch_o; : } : } : class cls_B { : public char ch_X; : public void getChar() { : return ch_X; : } : } : 以下是main: : Object[] foo = new Object[2]; : cls_A a = new cls_A('o'); // 宣告一個cls_A物件a : cls_B b = new cls_B('X'); // 宣告一個cls_B物件b : for (int i=0; i<2; i++) : foo[i] = new Object(); // 初始化. : foo[0] = a; : foo[1] = b; : for (int i=0; i<2; i++) // 印出字元 : System.out.println(foo[i].getChar()); : 會有錯誤.. : 我翻書找過好像是downcasting的問題(我不確定), : 請問有什麼方法可以解決還是要改進的嗎? : 謝謝。 -- 重要的是"心" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.232.209.234
choYM:謝謝!! <(_ _)> 05/10 13:00