聯(lián)系博主          博客地圖
                     

          類方法可以理解為靜態(tài)方法嗎

          Posted on 2007-08-22 14:42 怎么羨慕天空的飛鳥 閱讀(1634) 評論(4)  編輯  收藏 所屬分類: java
          對于實例方法,實例變量和類方法,類變量的區(qū)分的不是很清楚,談一下個人現(xiàn)在理解程度:

          1,類方法類變量是靜態(tài)方法,靜態(tài)方法和靜態(tài)變量可以看作是全局的。
          2,實例方法和是實例變量可以看作是由類new出來的對象,是局部的。

          規(guī)則:
          1,全局的可以調(diào)用全局的
          2,局部的可以調(diào)用局部的
          3,局部可以調(diào)用全局的
          4,全局不可以直接調(diào)用局部的
          5,實例方法和實例變量只可以由對象引用,而類方法和類變量可以由類名或?qū)ο笠谩?br>
          以上是自己的一些看法,不對的地方請指教。

              核心: 勇敢進取年輕的心

           

          Feedback

          # re: 類方法可以理解為靜態(tài)方法嗎  回復(fù)  更多評論   

          2007-08-23 11:07 by 軒朗=maninred
          你可以看看Ruby中對類方法的解釋,它的解釋大概是,類也是一種對象,是一種能夠生成對象的對象(比如使用new方法),所以類方法是類這種對象的方法,而不是類對象所生成的一般對象的方法。

          # re: 類方法可以理解為靜態(tài)方法嗎  回復(fù)  更多評論   

          2007-08-23 14:20 by Unmi
          博主理解的太復(fù)雜了,類方法就是不依據(jù)于實例而存在的方法,調(diào)用時不用傳遞隱含的this指針,實例方法則不同。
          類方法就是靜態(tài)方法,靜態(tài)方法中調(diào)用實例方法需要通過實例來調(diào)用
          為什么靜態(tài)方法中不能直接調(diào)用實例方法呢,因為在調(diào)用時沒有產(chǎn)生實例。

          # re: 類方法可以理解為靜態(tài)方法嗎  回復(fù)  更多評論   

          2007-08-23 18:11 by 怎么羨慕天空的飛鳥
          謝謝Unmi的幫助,對類方法理解更透徹了。類方法可以理解為只要相應(yīng)的類存在,java就會為類方法開辟相應(yīng)的內(nèi)存,而實例方法只有在實例化時java才為其開辟相應(yīng)的內(nèi)存。不知道用內(nèi)存來解釋是否合適?@Unmi
          @軒朗=maninred
          @Unmi

          # re: 類方法可以理解為靜態(tài)方法嗎[未登錄]  回復(fù)  更多評論   

          2007-09-04 13:20 by unmi
          實例方法也并非說只有實例化化時java才為其開辟相應(yīng)的內(nèi)存,應(yīng)該是類被加載并初始化后,實例方法就有了相應(yīng)的內(nèi)存區(qū),多個實例方法調(diào)用的實例方法地址是一樣的,只是帶了一個this指針參數(shù),所以方法在某些情況下需要進行同步。

          要理解 ClassLoader

          Copyright © 怎么羨慕天空的飛鳥

          主站蜘蛛池模板: 寻乌县| 镇江市| 宁津县| 马尔康县| 岳阳市| 奉化市| 曲水县| 青神县| 武冈市| 万宁市| 怀宁县| 固镇县| 仁怀市| 巨野县| 安康市| 永新县| 南江县| 灌云县| 蒙自县| 闽清县| 怀化市| 博湖县| 莱阳市| 资兴市| 湾仔区| 承德市| 犍为县| 通江县| 蓝田县| 安西县| 白沙| 琼结县| 合阳县| 自贡市| 枣强县| 新竹县| 陇西县| 普定县| 依兰县| 甘洛县| 吉安县|