章10——物件導向程式設計(高階部分)——類名類方法

gknives發表於2024-09-01
  1. 類變數/靜態(static)變數/靜態屬性
    特點
    由該類的全體物件例項共享,該變數只佔同一塊記憶體空間。
    其標誌是關鍵字static修飾。
    在類載入的時候便生成了。類載入的時機如下圖:

public static int count = 0;
類變數可以由類名來訪問。
System.out.println("共有" + Child.count + "個小孩加入了遊戲");
有關類變數的記憶體佈局
JDK8以前:在方法區中
JDK8以後:在堆裡該類對應的class物件的最後
具體圖如下:

定義類變數

訪問類變數
可用類名、物件名,推薦用類名。
原因:類變數是隨著類的載入而建立的,所以沒有例項也可以訪問。
靜態變數的訪問修飾符的訪問許可權和範圍 和 普通屬性是一樣的。
使用細節

2. 類方法
定義類方法

呼叫類方法:類似類變數。
類方法應用場景
方法中不涉及任何物件相關的成員時,如開發自己的工具類中的方法,氣泡排序、列印陣列等。
例如 Math.sqrt(9);
類方法其他注意細節

如上,靜態方法中不可以用this,super關鍵字。
非靜態方法不可以透過類名呼叫。
類方法中只能訪問 靜態變數 或 靜態方法。
普通方法可以隨便訪問成員。

相關文章