首先學習幾個單詞
index 索引
bounds 邊界
assigned 指定
陣列:
相同資料型別的有序集合
陣列也是物件
長度是不可變的,越界報array index out of bounds exception
陣列語法:
宣告
int a;
int a ;
建立
new
int [4]
初始化:
預設初始化:陣列元素相當於物件的成員變數初始化方式預設的值和成員變數一樣數字0 布林false char 0 引用null
動態初始化:指利用迴圈進行初始化![描述][1]
靜態初始化:
int c =
cars cars= ;
記憶體分析 1
int a=new
int[4];
a[0]=1;
a[1]=2;
a[2]=22;
a[3]=33;
int a 對應在棧裡面宣告了乙個引用
new int[4]; 對應在堆裡面開闢了4個空間的陣列但是剛開始的時候預設初始化是0
再分別賦給不同的整形值
記憶體分析2
class
car}
car cars = new car[4];
cars[0]=new car("賓士");
cars[1]=new car("寶馬");
cars[2]=new car("比亞迪");
cars[3]=new car("奧拓");
car cars:在棧裡面開闢乙個引用,指向堆裡面的陣列空間
new car[4];在堆裡面開闢乙個4個空間的陣列剛開始的時候都是null
cars[0]=new car("賓士"):在堆裡面開闢了乙個物件讓cars[0]裡的int型引用指向該物件而且該物件的name屬性指向了常量池裡面的常量
java的記憶體分析
1.棧描述的是方法執行的記憶體模型。每個方法被呼叫都會建立乙個棧幀 儲存區域性變數 運算元 方法出口等 2.jvm為每個執行緒建立乙個棧,用於存放該執行緒執行方法的資訊 實際引數 區域性變數等 3.棧屬於執行緒私有,不能實現執行緒間的共享 4.棧的儲存特性是 先進後出,後進先出 5.棧是由系統自動分...
Java程序記憶體分析
ps aux命令執行結果的幾個列的資訊的含義 user 程序所屬使用者 pid 程序id cpu 程序占用cpu百分比 mem 程序占用記憶體百分比 vsz 虛擬記憶體占用大小 單位 kb killobytes rss 實際記憶體占用大小 單位 kb killobytes tty 終端型別 stat...
java物件占用記憶體分析
前言 空物件佔8個位元組 有資料成員的話,你把資料成員按基本資料型別和物件引用分開統計。基本資料型別按byte boolean 1,char short 2,int float 4,long double 8,累加,然後對齊到8的倍數。物件引用按每個4位元組,累加,然後對齊到8個位元組的倍數。物件占...