Java之三种初始化以及内存的调用

内存分析

Java内存分析:

堆:

  • 存放new的对象和数组

  • 可以被所有的线程共享,不会存放别的对象引用

栈:

  • 存放基本变量类型(会包含这个基本类型的具体数值)
  • 引用对象变量(会存放这个引用在堆里面的具体地址)

方法区:

  • 可以被所有的线程共享
  • 包含了所有的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;

  • 数组的默认初始化

数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量相同的方式被隐式初始化。

猜你喜欢

转载自blog.csdn.net/xiaoxiaobaie/article/details/119871358