2022.1.4Java基础-构造方法、内存管理
构造方法重载
含参不含参
public class Point {
double x,y;
Point(double _x,double _y){
x=_x;
y=_y;
}
Point(){
}
}
Java虚拟机内存模型
虚拟机的内存可以分为三个区域:栈stack、堆heap、方法区method area
栈:
栈里放的是要执行,或者正在执行的方法
虚拟机会为每一个进入栈的方法分配一个栈帧虚拟机为每一个线程创建一个栈,用于存放该方法的信息(局部变量、实际参数)栈属于线程私有,不能实现线程之间共享栈的存储特性:“先进后出,后进先出”栈是由系统自动分配,速度快,栈是一个连续的内存空间
堆:
堆里放的是创建好的对象和数组(数组也是对象)
虚拟机只有一个堆,被所有线程共享堆在内存的存储方式是不连续的,所以分配灵活,速度慢堆被所有线程共享,被创建很多个对象,垃圾回收器会做进一步规划,把长时间不用的对象回收,就被划分为年轻代、老年代
方法区:
共有 0 条评论