Re: 有關繼承的問題

看板java作者時間19年前 (2006/05/06 18:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/5 (看更多)
※ 引述《deepdish.bbs@binary.csie.ncu.edu.tw (資管四霸征服天下)》之銘言: > ※ 引述《redbug.bbs@bbs.ice.cycu.edu.tw (雙面虎)》之銘言: > 程式碼如下 請各位高手幫幫忙 > class Parent { > int i = 30; > int sum(int j) { > return i+j; > } > int sum(){ return 333; } // 我不去掉 > } > class Child extends Parent { > int i = 10; > //////////////////////////////////////////////////// > // int sum() { // 但是去掉這段,就可以編譯了 // > // return this.i + super.i; // > // } // > //////////////////////////////////////////////////// > } public class ex { public static void main(String[] argv) { Child c = new Child(); test(c); } static void test(Parent p) { ^^^^^^ 因為你已經cast成 Parent 接著呢 你的Parent class中並沒有 sum() 那麼 compile 就不會過囉.... 我猜的.... System.out.println("p.sum():" + p.sum() + " p.sum(20):" + p.sum(20)); } //變成333 ^^^^^^^^50 } -- Origin: 彰化師大生物系˙吟風‧眺月‧擎天崗 micro.bio.ncue.edu.tw Author: CubicU59-114-135-247.dynamic.hinet.net 發表
文章代碼(AID): #14N7iZ00 (java)
文章代碼(AID): #14N7iZ00 (java)