- Test.java和Person.java编译(javac)成Test.class和Person.class,两个class文件放入方法区。
- 执行main方法,main方法入栈。
- 执行Person zhang=new Person();此时对象zhang进入堆,其中包括其变量和方法(若其中的变量和方法为static,则放入方法区),同时把zhang的地址值传入main方法。
- 执行run方法,run方法入栈。
- 执行完毕,依次出栈(先进后出),释放内存。
public class Test {
public static void main(String[] args){
//Person 代表类型
//zhang 对象名
//new 关键字 在堆内存中开辟内存空间
//=
Person zhang=new Person();
zhang.run(1000);
}
}
public class Person {
int age=18;
int height=180;
int runNum=0;
public void run(int num){
runNum=num;
System.out.println("runNum="+runNum);
}
}