JVM CLASSLOADER

1.类生命周期:

加载、连接(验证、准备、解析)、初始化、使用、卸载

对类初始化的时机:

1)遇到new,getstatic,putstatic,invokestatic这四条字节码指令

2)反射

3)使用子类时如果父类未初始化

4)虚拟机启动时初始化包含main方法的类

2.类加载器

将类的加载过程放到java虚拟机外部实现,如applet的加载

加载器类别:

1)Bootstrap ClassLoader 将<JAVA_HOME>/lib或classpath中的类加载到虚拟机内存中,无法被程序直接引用

2)Extension ClassLoader加载<JAVA_HOME>/lib/ext中的类,可以使用程序调用

3)Application ClassLoader负责加载类路径上的类

加载器的双亲委派模型

B-E-A-U

工作过程:类加载器收到加载请求不会自己尝试加载,而是把这个请求委派给父类加载器,只有在父类无法加载才会自己去加载。不是以继承的关系来实现,而是以组合的关系来复用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值