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

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

          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

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 故城县| 讷河市| 通城县| 岑溪市| 南木林县| 枣强县| 卓资县| 修水县| 龙岩市| 石台县| 营口市| 卓尼县| 盐津县| 常德市| 嘉峪关市| 腾冲县| 池州市| 清河县| 民县| 彰化县| 洞头县| 吴忠市| 翁牛特旗| 南溪县| 河南省| 新邵县| 黎平县| 林芝县| 威信县| 乌什县| 大兴区| 客服| 阜康市| 禄丰县| 大姚县| 安阳市| 徐州市| 武清区| 田阳县| 正蓝旗| 双柏县|