013 靜態與非靜態

2021-10-05 15:04:32 字數 499 閱讀 6463

一、靜態 static

呼叫 :類名.成員名

適用場景

a. 你的資源需要全域性享用 共享的時候。

b. 如果你寫的類需要被當做工具類來使用,典型的工具類(console)。

靜態類中的成員必須是靜態的。

靜態類不能被例項化(因為它只有乙份,例項化就會有很多份)。

靜態類成員先物件一步進入記憶體中。

靜態成員只有在整個程式結束的時候才能夠被釋放資源,所以程式中的靜態成員越少越好。

二、靜態類與非靜態類的區別

如果當前成員是靜態成員,那麼加static進行修飾。

呼叫的區別:

a. 靜態成員在呼叫時需要使用類名來呼叫——屬於類。

b. 非靜態類成員在呼叫時使用物件名來呼叫——物件。

非靜態類

a. 在非靜態類中既允許出現靜態成員,也允許出現非靜態成員。

b. 在非靜態函式中既允許訪問非靜態成員,也能訪問靜態成員

靜態函式中只允許訪問靜態成員。

靜態與非靜態

一 靜態變數和例項變數的區別 1 靜態變數 由static修飾,在jvm中,靜態變數載入順序在物件之前,所以靜態變數不依賴物件的存在,可以不例項化物件的情況下使用類的靜態變數。通過上面的 可以看出,靜態變數可以在未例項化物件的時候使用,但是非靜態變數只能在例項化物件時候才能使用。執行結果為 30李四...

靜態與非靜態

什麼是靜態?被static修飾的為靜態,static可用來修飾變數 方法 內部類 塊。注意 1 static不能用來修飾外部類 介面 抽象類 抽象方法。2 介面中的變數可以不用明確的宣告為靜態的,但必須賦值,因為變數預設為public static final。3 介面中的方法不能被宣告為靜態的,介...

C 靜態與非靜態

public static class math 靜態類 靜態屬性 public static void add 靜態方法 注意 靜態類不能被例項化,沒有構造方法,成員全部為static 定義非靜態類 public class math 非靜態類 靜態屬性 public int myproperty...