面向對象(補充)

來補充說一些關於面向對象的知識點。

 

類的分類

類簡單可以分爲實體類、工具類、主類/測試類三部分。

實體類:就是爲了描述一個事物而創建的類,類中內容基本上都是成員函數/成員變量,也會存在一個靜態成員。

工具類:提供一些已經被實現好的功能,向外部供應,所以工具類中基本上全都是靜態函數。比如Math類、 Arrays類等等。另外,工具類中都是之所以是靜態是因爲:一是共有的,二是長時間存在,三是加載一次後期隨便使用。

主類/測試類:主要用於運行/測試代碼,這個類中會有主函數的存在。

 

靜態變量與成員變量的區別

1.生命週期

成員變量隨着對象的創建而創建,隨着對象的消亡而消亡。

靜態變量隨着類的加載而創建,隨着程序結束而消失。

2.調用方式

成員變量必須先創建對象,再通過對象去調用。

靜態變量可以被對象調用,也可以直接用類調用。

3.存儲位置

成員變量存在於堆內存中對象的所屬空間裏。

靜態變量存在於靜態方法區中類的所屬空間裏。

4.命名

成員變量-對象的特有屬性。

靜態變量-對象的共有屬性。

 

代碼塊

代碼塊 { ... },就是大括號及大括號裏面的內容所組成的東西。代碼塊可以分爲局部代碼塊、構造代碼塊、靜態代碼塊。

局部代碼塊:存在於函數當中(包括函數)。比如for(){...}、if(){...}等等。   

構造代碼塊:直接在類中出現的{...}。當對象創建一次,構造代碼塊執行一次。它的作用等同於構造函數。

靜態代碼塊:直接在類中出現的static{...}。當類被加載的時候,僅且只執行一次。作用即對類進行一些初始化操作。

 

  未完待續。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章