1. 程式人生 > 實用技巧 >Java10-3_初始化及記憶體分析

Java10-3_初始化及記憶體分析

初始化及記憶體分析

記憶體分析

  • Java記憶體分析:

      1. 存放new的物件和陣列

      1. 可以被所有執行緒共享,不會存放別的物件引用

      1. 存放基本變數型別(會包含這個基本型別的具體數值)

      2. 引用物件的變數(會存放這個引用在堆裡面的具體地址)

    • 方法區

      1. 可以被所有的執行緒共享

      2. 包含了所有的class和static變數

三種初始化

  • 靜態初始化

int[] a={1,2,3};
Man[] mans={new Man(1,1),new Man(2,2)}
  • 動態初始化
int[] a=new int[2];
a[0]=1;
a[1]=2;
  • 陣列的預設初始化
    • 陣列是引用型別,它的元素相當於類的例項變數,因此陣列一經分配空間,其中的每個元素也被按照例項變數同樣的方法被隱式初始化
 1 package com.Xujie.Day10;
 2 
 3 public class Java10_02 {
 4     public static void main(String[] args) {
 5         //靜態初始化:建立+賦值
 6         int[] a={1,2,3,4,5,6,7,8};
 7         System.out.println(a[0]);
 8         //動態初始化:包含預設初始化
9 int[] b=new int[10]; 10 b[0]=10; 11 b[1]=7; 12 13 System.out.println(b[0]); 14 System.out.println(b[1]); 15 System.out.println(b[2]); 16 System.out.println(b[3]); 17 } 18 }