在繼承中的 靜態方法調用注意

             
                在繼承中的 使用靜態方法的時候該注意。。。。。
             你覺得下面程序很簡單吧,打印出什么呢? 沒看仔細要錯的哦~!~

          class Dog{
              
          public static void bark(){
                  System.out.println(
          "Dog bark");
              }

          }


          class Basenji extends Dog{
              
          public static void bark(){
                  
              }

          }


          public class Test {
              
          public static void main(String []args) throws Exception{
                  Dog dog 
          = new Dog();
                  Dog basenji 
          = new Basenji();
                  dog.bark();
                  basenji.bark();
                  
              }

          }


          程序運行結果:
          Dog bark
          Dog bark

          打印出2個Dog bark,額,原來對靜態方法的調用不存在任何動態的分派機制。這個沒有注意很容易搞錯的哦~!!~

          posted on 2009-04-15 19:15 胡鵬 閱讀(466) 評論(6)  編輯  收藏 所屬分類: java基礎

          評論

          # re: 在繼承中的 靜態方法調用注意 2009-04-16 11:23 重慶理工小子

          動態的分派機制
          這是什么意思叱?

          結果是錯誤的,只能打印一個!  回復  更多評論   

          # re: 在繼承中的 靜態方法調用注意 2009-04-16 13:25 胡鵬

          @重慶理工小子
          如果 在方法中 public static void bark(), 把static都去掉, 那只是打印一個 Dog bark
            回復  更多評論   

          # re: 在繼承中的 靜態方法調用注意 2009-04-16 17:15 重慶理工小子

          即使不去掉也只能打印一個哈,思考!  回復  更多評論   

          # re: 在繼承中的 靜態方法調用注意 2009-04-16 17:46 重慶理工小子

          都去掉肯定是一個撒,而且,你把DOG中的bank方法去掉statac,結果應該還只是一個Dog bark;
          如果你在DOG中,重新申明bank方法,即增加:System.out.println("XXXX");
          這時候結果應該是:dog bark;
          XXXX
          子類沒覆蓋也沒繼承父類的static方法,因為static方法是無法繼承的!  回復  更多評論   

          # re: 在繼承中的 靜態方法調用注意 2009-10-19 16:33 管閑事

          上面的結果只有一行,已經測試過。樓主搞錯了。。。
          Dog bark
            回復  更多評論   

          # re: 在繼承中的 靜態方法調用注意[未登錄] 2009-11-03 09:32 胡鵬

          @管閑事
          額,,跑出來是2個的哦。。 不知道您使用的哪個版本jdk?  回復  更多評論   

          導航

          <2009年4月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          統計

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          agile

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 巴东县| 咸宁市| 临潭县| 若尔盖县| 弋阳县| 遂溪县| 特克斯县| 红河县| 阳高县| 剑川县| 东兰县| 临安市| 大石桥市| 沿河| 西昌市| 永泰县| 鹿泉市| 洛宁县| 城步| 阳信县| 扶风县| 南康市| 纳雍县| 清苑县| 松溪县| 原阳县| 武隆县| 仁怀市| 车险| 清徐县| 南城县| 拜泉县| 金山区| 新巴尔虎右旗| 郁南县| 云安县| 大石桥市| 沧州市| 万源市| 石首市| 正镶白旗|