package day06;
1.编译的时候原文件变成了字节码文件在硬盘上,运行的时候加载到内存上,加载到内存上其实就是进入了方法区,只有在内存上时,才可以使用对应的数据
public class Demo_Car {//1.Demo_Car类编译进入方法区,Demo_Car下面的main主方法,由虚拟机自动调用
public static void main (){//2.虚拟机调用之后,main主方法进栈
Car C1 = new Car();//3.Car类加载到内存,有对应的成员变量和成员方法,可以使用,进堆new创建对象(地址),把地址给Car C1
C1.color="红色";//4.通过地址找到对象赋值
C1.num=4;
C1.run();//run方法进栈,使用调用方法,运行完成之后弹栈。
//C1=null;
//C1.run();//报空指针异常,上方的new Car对象,如果没有任何引用指向该对象,那么该对象就会变成垃圾,java中有完善的垃圾回收机制,会在不定时对其进行回收。
}
}
class Car{
String color;
int num;
public void run(){
System.out.println(color+"===="+num);
}
}