Java程序执行前都需要经过编译,加载,连接,初始化的过程。
编译:javac来编译生成字节码;
加载:javac生成的字节码文件(.class)读入内存的数据区的方法区,在堆内创建一个java.lang.class对象,这个对象就是加载的类本身,而且这个对象是单实例,这个类可以创建很多对象,但这个类本身作为一个java.lang.class对象是唯一存在的,与类只被加载一次的相一致的。
另外,在类被加载的时候,类中定义的静态代码块会被执行。
获取类的java.lang.class对象有三种方式:class.forname(类的全路径),instance.class,Instance.getclass()。
明天回顾一下类与实例的初始化过程,完善一下内容。