Leslie

Sbkill1r,Qlb6x.

Navigation
 » Home
 » About Me
 » Projects
 » Github
 » XML Feed

Java程序执行过程的内存分析

11 Jan 2016 » java

1. 属性field

  • 属性用于定义该类或该类对象包含的数据或者说静态属性。属性作用范围是整个类体。定义成员变量默认初始化。(数值:0,0.0,char:\u0000,boolean:false,所有引用类型:null)
public class Student {
	String name;
	int id;
	int age;
	String gender;
	int weight;
	
	public void study()
	{
		System.out.println(name+"在学习");
	}
	public void sayHello(String sname)
	{
		System.out.println(name+"说"+sname+"晚上好");
	}
	public static void main(String[] args)
	{
		Student s1 =new Student();
		
		s1.name="小刚";
		s1.study();
		s1.sayHello("小龙");
		
		Student s2= new Student();
		s2.age=18;
		s2.name="老高";
	}
}
  • 面向对象中,整个程序的基本单位是类,方法是从属于类的。
  • 栈(连续分配):存放:局部变量
  • 堆(不连续):存放new出来的对象
  • 方法区(堆的一部分):存放:类的信息(代码),static变量,变量池(字符串常量)等
  • 通过类加载器Class Loader加载Student类。加载后,在类方法区就有了类的信息
  • 在Student类中加入computer类 fenxi1

fenxi2