創建對象對應的jvm內存圖(一)

爲什麼要畫內存圖?

  1. 有了內存圖,程序不運行,我也知道結果(可以推薦出結果)
  2. 有了內存圖,有助於你調試程序。 畫內存圖是對java運行機制的一種理解,不知道運行機制,以後複雜的程序出現錯誤後,不會調試,調也不明白

畫內存圖注意事項

  1. 在內存圖上不要體現出代碼,內存上應該主要體現"數據"
  2. 畫圖的時候,圖上的圖形應該有先後順序,先畫什麼,再畫什麼,必須是有順序的,而不是 想起來什麼就畫什麼,想起哪個畫那個。程序代碼是有執行順序的,程序執行到哪裏你就畫哪裏。

具體舉例代碼如下


public class User{
    //用戶id
    int id;
    //用戶名
    String username;
    //密碼
    String password;
}
//第一步:類的加載
//第二步:調用UserTest類的main方法(方法調用要壓棧。)
public class UserTest{

    public static void main(String[] args) {
        User u1 = new User();
        u1.id=111;
        u1.username ="zhangsan";
        u1.password ="123";
        System.out.println(u1.id);
        System.out.println(u1.username);
        System.out.println(u1.password);

        User u2 = new User();
        u2.id=222;
        u2.username ="lisi";
        u2.password="456";
        System.out.println(u2.id);
        System.out.println(u2.username);
        System.out.println(u2.password);


    }
}

內存圖

usertest內存圖

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