java基础——内存和变量

本文详细介绍了Java的内存管理,包括栈内存(存储方法运行时的数据和变量)、堆内存(用于存储new创建的对象及其成员变量)以及方法区内存(存储字节码文件)。此外,还阐述了成员变量(类中方法外的变量)和局部变量(方法内的变量)的定义及它们之间的区别。

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

目录

前言

一、java的内存

1、栈内存

2、堆内存

3、方法区内存

二、成员变量与局部变量

1、成员变量

2、局部变量

3、成语变量和局部变量的区别


前言

介绍Java的三种内存分配(栈、堆、方法区)、成员变量和局部变量


一、java的内存

1、栈内存

方法运行时所进入的内存,变量也是在这里

方法执行完毕后会出栈(先进后出、后进先出)

2、堆内存

存放用new产生的数据并且开辟空间并产生地址(变量应用的对象及其成员变量和方法)

3、方法区内存

 字节码文件加载时进入的内存(临时存储)

public class Test1
{
  String name;
  int age=0;
  public viod study1(){
	  System.out.println("我喜欢学习Java");
  }
}
public class TestStudent
{
	public static void main(String[] args) 
	{
		Student s=new Student();
		System.out.println("s");
		System.out.println(s.name+"  "+s.age);
		s.name="李华";
		s.age=18;
		System.out.println(s.name+"  "+s.age);
		s.study();
	}
}

 

 


二、成员变量与局部变量

1、成员变量

类中方法外的变量

public class Student 
{
	private String name;
	private int age;
}

2、局部变量

方法中的变量

public class Test
{
	public static void main(String[] args) 
	{
		int a=10;
		new Student();
	}
}

 

3、成语变量和局部变量的区别

区别成员变量局部变量
类中的位置不同类中、方法外方法内、方法申明上
初始化不同有默认初始值没有,使用前要进行赋值
内存的位置不同堆内存栈内存
生命周期不同随着对象的创建而存在,随着对象的消失而消失随着方法的调用而存在,方法运行结束就会消失
作用域整个类中当前方法中

 在内存中的体现:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值