类加载器,Java项目。2020-11-25

2 体系结构

在这里插入图片描述

3 类加载器

作用: 加载Class 文件
在这里插入图片描述
1.虚拟机自带的加载器
2.启动类(根)加载器
3.扩展类加载器 ExtClassLoader
4.应用程序(系统类)加载器 AppClassLoader

双亲委派机制:用户不能修改系统自带的类。。。public class String{} //关键字的不能修改 首先:APP–》Ext–》boot
Person stu = new Person();

Class stuclass = stu.getClass();

ClassLoader classLoader = stuclass.getClassLoader(); //AppClassLoader
classLoader.getParent();  //ExtClassLoader
classLoader.getParent().getParent(); //根加载器  结果: null 1‘不存在’ 2‘java程序获取不到C++’

1.类加载器收到类加载的请求!
2.将这个请求向上委托给父类加载器去完成,一直向 上委托,知道启动类加载器
3.启动加载器检查是否能够加载当前这个类能加载就结束, 使用当前的加载器,否则,抛出异常,通知子加载器进行加载
4.重复步骤3
CLass Not Found

1 沙箱安全机制
2 Native
3 PC寄存器
4 方法区: static \ final \ Class模板 \ 常量池

1、 native ;凡是带了native关键字的,说明java的作用范周达不到了,回去调用底层C语言的库!
2、 会进入本地方法栈
3、调用本地方法本地接口JNI
4、 JNI作用:扩展Java的使用,融合不同的编程语言为Java所用!最初; C. C++.
5、Java诞生的时候C、CH+横行,想要立足,必须要有调用C、C++的程序
6、它在内存区域中专门开辟了块标记区域: Native Method Stack,登记native方法
7、在最终执行的时候,加载本地方法库中的方法通过JNI
8、Java程序驱动打印机、管理系统掌握即可, 在企业级应用中较为少见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值