java 栈 堆 以及 java变量存储位置

本文通过一个具体的Java类实例,详细解析了Java中不同类型的变量如何在内存中进行分配,包括基本数据类型、对象引用及静态成员等,并简单介绍了堆、栈和常量池的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先看下如下代码:

public class Storage {
	/* java 基本类型 */
	private byte b = 1;// 1个字节
	private short s = 2;// 2个字节
	private int i = 4;// 4个字节
	private float f = 4.0f;// 4个字节
	private double d = 8d;// 8个字节
	private long l = 8;// 8个字节
	private char charset = 'a';// 2个字节
	private boolean bl = true;// 1个字节

	// name:对象引用
	// “upxiaofeng”:字符串常量
	private String name = "upxiaofeng";
	// 基本类型常量
	public static final int sfi = 9;

	// 数组
	private int[] ints = { 1, 2, 3 };

	public void method() {
		// 关键字new出来的对象
		// storage:对象的引用
		Storage storage = new Storage();
		// 局部变量
		int age = 1;
	}

}
下面说明一下java内存的分配


这里只是对 堆栈和常量池做了一个讲述,其实java内存还包含了很多其他的东西,慢慢研究。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值