java Class-类加载的三种方法 以及类的初始化的六种方式 及终止执行的方式

1在命令行启动虚拟机jvm进行加载,

2用class.forname()方法进行动态加载;

3用ClassLoader.loadClass()进行动态加载;

区别:用二方法加载时,还会对类进行解释,执行其中的static语句块;

          用三方法时候,static语句块不会被执行,只有在类创建对象的时候才会加static语句块;

注意:class.forname(name,initialize,loader)也可以自己定义是否加载static,并且是调用了NewInstance()方法

采用构造函数创建对象的时候才可以;


初始化:只有在使用时类才会被初始化。

1 初始化,也就是new时候会初始化类

2 访问类或者接口中的静态变量或者对其赋值

3 调用类的静态方法

4 反射(Class.forName("com.geminno");)

5 初始化它的子类,父类也会初始化

6 虚拟机启动时被标明是启动类的类(java Test),直接用java.exe运行某个类;

程序执行结束的几种方式:

1 system.exit();

2 正常执行完毕;

3程序运行错误,报错

4系统出现问题,虚拟机停止运行;






你可能感兴趣的:(java)