聯系博主          博客地圖
                     

          類方法可以理解為靜態方法嗎

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

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

          規則:
          1,全局的可以調用全局的
          2,局部的可以調用局部的
          3,局部可以調用全局的
          4,全局不可以直接調用局部的
          5,實例方法和實例變量只可以由對象引用,而類方法和類變量可以由類名或對象引用。

          以上是自己的一些看法,不對的地方請指教。

              核心: 勇敢進取年輕的心

           

          Feedback

          # re: 類方法可以理解為靜態方法嗎  回復  更多評論   

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

          # re: 類方法可以理解為靜態方法嗎  回復  更多評論   

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

          # re: 類方法可以理解為靜態方法嗎  回復  更多評論   

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

          # re: 類方法可以理解為靜態方法嗎[未登錄]  回復  更多評論   

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

          要理解 ClassLoader

          Copyright © 怎么羨慕天空的飛鳥

          主站蜘蛛池模板: 额敏县| 调兵山市| 麦盖提县| 资源县| 宝丰县| 陕西省| 阿拉尔市| 广宗县| 晋中市| 红桥区| 西昌市| 邛崃市| 齐河县| 乐清市| 化德县| 平凉市| 河南省| 克什克腾旗| 霍城县| 漳浦县| 乐亭县| 浙江省| 隆化县| 永泰县| 通山县| 璧山县| 白河县| 甘谷县| 柳林县| 永泰县| 宁津县| 潜山县| 泉州市| 左云县| 南和县| 合江县| 启东市| 依兰县| 夹江县| 静安区| 西乌珠穆沁旗|