static 屬性 常用記憶體區域

2021-10-02 03:31:46 字數 860 閱讀 3232

static 屬性:

屬性前加static表示公共屬性,所有物件都可以使用的屬性。(任何乙個物件修改了公共屬性的內容,都將影響其他物件)。

常用記憶體區域:

棧記憶體空間:儲存所有的物件名稱(更準確是儲存引用的堆記憶體空間的位址);

堆記憶體空間:儲存每個物件的具體屬性內容;

全域性資料區:儲存static型別的屬性;

全域性**區:儲存所有的方法定義;

static定義的屬性 vs 非static定義的屬性:

1.static定義的屬性是可以由類名稱直接呼叫的

book.pub = 「清華大學出版社」;

2.非 static屬性,必須產生例項化物件,才可以訪問。

static定義的方法 vs 非static定義的方法

1.使用static定義的方法也可以在沒有例項化物件產生的情況下由類名稱直接進行呼叫

a.static方法不能直接訪問非static****屬性或方法,只能呼叫static屬性或方法

b.非static方法可以訪問static屬性或方法不受任何限制

所有的非static定義的結構,必須在類已經明確產生例項化物件時才會分配堆空間,才可以使用。

所有的static定義的結構,不受例項化物件的限制,即可以在沒有例項化物件的時候訪問。

不儲存普通屬性時,定義static方法。

Java相關學習 5 屬性,static,記憶體

一 屬性 封裝 屬性私有方法公有 無參構造器,有參構造器,set get方法 再寫乙個tostring 方便測試 當屬性變為私有時 一定要寫get,set方法提供獲取和修改屬性 二 static static可以修飾變數也可以修飾屬性和 塊 static修飾的方法在呼叫其他方法時其他方法也應該是st...

記憶體區域dump

程式除錯中,經常需要輸出記憶體資訊,以便進一步分析,下面是我寫的乙個簡單的輸出函式 sprintf hex i 3,02x str i 0xff printf 0x 3.2s in size cur 中 3.2s 表示輸出字串,寬度為3,精度為2 精度表示最多輸出兩個字元,多的捨去 左對齊,右填充空...

static修飾屬性

今天寫程式遇到一點小問題,最後問題出在成員變數修飾符上,static修飾符 public class students public int getid public void setid int id public string getname public void setname string...