1. 程式人生 > >Java淺談數組之內存分析(二)

Java淺談數組之內存分析(二)

說明 變量賦值 com logs .info clas code new blog

引用類型的數組的初始化

1數組元素是引用時的內存分析

package com.java.array;

class Person{
    public int age;//年齡
    public double height;//身高
    //定義一個info方法
    public void info(){
        System.out.println("我的年齡是:"+age+",我的身高是:"+height);
    }
}

public class ArrayTest2 {

    public static void main(String[] args) {
        
//定義一個student數組變量,其類型是Person[] Person []students; //執行動態初始化 students=new Person[2]; //創建一個Person實例,將這個實例賦值給變量zhang Person zhang=new Person(); //為張所引用的Person對象的age和height賦值 zhang.age=18; zhang.height=175; //創建一個Person實例,將這個實例賦值給變量wang Person wang=new
Person(); //為張所引用的Person對象的age和height賦值 wang.age=24; wang.height=170; //將zhang變量賦值給第一個數組元素 students[0]=zhang; //將wang變量賦值給第二個數組元素 students[1]=wang; //下面兩行代碼的結果完全是一樣的 //因為wang和students[1]指向的是同一個Person實例 wang.info(); students[
1].info(); } }

下面將上面的代碼轉化為存儲示意圖說明:

技術分享

Java淺談數組之內存分析(二)