首页 > 代码库 > 类加载机制与反射——2017.08.09

类加载机制与反射——2017.08.09

技术分享

一 程序、进程、线程的区别?

      打个比方:你从中国到美国坐飞机,飞机这个静态事物就是程序,从中国到美国做飞机这个过程就是进程,诸如登机、带安全面罩等等就是线程。

      进程与程序的区别:进程是处于运行过程中的程序。程序是一个静态的指令集合,进程是一个动态的指令集合

 

二 类的初始化

      程序主动使用某个类时。如果该类没有加载到内存中,系统会通过加载、连接、初始化三个步骤来对该类进行初始化。JVM在一般情况下会一次性完成这三个步骤,统称类加载或类初始化。

  类加载指的是讲类的class文件读入内存,并为之创建一个java.lang.Class对象。

       类的加载由JVM的类加载器提供。

 

Jvm初始化一个类包含如下几个步骤:

1 假如这个类还没有被加载和连接,则程序先加载并连接该类

2 假如这个类的之间父类没有被加载和连接,则程序先加载并连接该类

3 假如该类中有初始化语句,则系统一次执行初始化化语句

     

类加载机制与反射——2017.08.09