看板 java 關於我們 聯絡資訊
※ 引述《tsaiminghan (nahgnimiast)》之銘言: : 有個class大約如下 : 外部class的funOut函式使用內部class的funcInner函式做事情。 : ---------------------------------------------- : public class out { : private class inner{ : public void funcInner(){} : } : public void funOut(){ : inner i = new inner(); : i.funcInner(); : } : } : ---------------------------------------------- : 我的問題是現在繼承了out物件,但是想改內部class : 的funcInner的行為,這語法有沒有支援? : 我現在唯一會的就是把funOut和class inner全部複製到 : 新的class,然後修改funcInner,有比較好的寫法嗎? 應該可以吧~ class out { private class inner{ public void funcInner(){ System.out.println("out.inner.funcInner");} } public void funOut(){ System.out.println("out.funOut"); inner i = new inner(); i.funcInner(); } public out(){ System.out.println("out"); } } class out2 extends out { public void funOut(){ System.out.println("out2.funOut"); super.funOut(); } public out2(){ System.out.println("out2"); funOut(); } } public class Test { public static void main(String[] args) { System.out.println("1"); out o1 = new out(); System.out.println("2"); out2 o2 = new out2(); System.out.println("3"); } } 輸出 1 out 2 out out2 out2.funOut out.funOut out.inner.funcInner 3 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.175.188
byend:有創意..但跟原文解題目的好像不相干? 11/28 15:41
pttnews:有干!證明 inner Class 可以繼承使用 11/28 16:28
PsMonkey:可以使用? 可以繼承? 11/28 17:44
LaPass:原PO是打算在繼承的中class繼承inner class 11/28 17:48
pzyc79:很好你繞一圈呼叫了inner其中一個方法 但是繼承只有這樣嗎? 11/28 21:20