类加载

类加载器在加载的时候:
1、并非一次性加载,需要的时候才动态加载
2、static语句块在加载后只执行一次
static{
}
3、dynamic语句块在每次new新的对象的时候都会执行  

等同于构造方法中的语句,用的比较少

class A {

{//dynamic 语句块

}

}


JDK内置ClassLoader
1、bootstrap class loader 是最核心的ClassLoader,没有名字,管理一些最核心的类,以及加载其他的类加载器
implemented by native language(c for example)
load the core classes of jdk 


2、extension class loader 扩展的类装载器
loader the class from jre/lib/txt


3、application class loader 加载用户自己定义的类的加载器,也就是SystemClassLoader


4、其他的一些ClassLoader  SercureClassLoader/URLClassLoader






JDK ClassLoader的层次关系(不是继承)
bootstrap class loader<----------extension class loader<-------application class loader<----other classLoader
ClassLoader在进行类加载的时候,首先检查parent索引指向的上一层的加载器是否已经加载过了,如果加载,此加载器不会
再次加载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值