如下代碼:
          class A{
              public void foo(){print("aaaaa");}
          }

          class B extends A{
              public void foo(){print("bbbbb");}
          }

          如果想通過(guò)B的實(shí)例化變量來(lái)調(diào)用被override的父類(lèi)的方法foo():

          B b = new B();

          在C++中(VC 6)可以兩種途徑;
          1.  ((A)b).foo();
          2.  A a = B();

          在java中類(lèi)似做法則行不通,依然訪問(wèn)的是子類(lèi)方法。
          而且,在java中好像達(dá)不到這個(gè)目的。

          Feedback

          # re: 疑惑:如何訪問(wèn)被覆蓋父類(lèi)的方法 -- java與C++類(lèi)模型的一點(diǎn)差異  回復(fù)  更多評(píng)論   

          2008-06-06 17:43 by Allen Liu
          Super.foo();

          # re: 疑惑:如何訪問(wèn)被覆蓋父類(lèi)的方法 -- java與C++類(lèi)模型的一點(diǎn)差異  回復(fù)  更多評(píng)論   

          2008-06-06 17:51 by Allen Liu
          你這里的A.foo()與((A)b).foo();沒(méi)什么兩樣吧?

          # re: 疑惑:如何訪問(wèn)被覆蓋父類(lèi)的方法 -- java與C++類(lèi)模型的一點(diǎn)差異  回復(fù)  更多評(píng)論   

          2008-06-15 19:15 by bluoy
          @Allen Liu
          這兒不是指在實(shí)例類(lèi)的內(nèi)部調(diào)用,而是在實(shí)例類(lèi)的外部如何使用呢?

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 临沭县| 武清区| 汾阳市| 商城县| 怀仁县| 肇庆市| 鄂温| 太白县| 法库县| 五寨县| 四子王旗| 廊坊市| 敖汉旗| 伊通| 霍城县| 民和| 奎屯市| 新田县| 朔州市| 彰化市| 平顶山市| 太仆寺旗| 峨山| 平果县| 馆陶县| 博白县| 湘西| 来凤县| 南木林县| 日照市| 巴中市| 额敏县| 安溪县| 武穴市| 定边县| 松潘县| 盐源县| 福贡县| 望谟县| 绥江县| 封开县|