JVM 中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java 中的 类加载器是一个重要的 Java 运行时系统组件,它负责在运行时查找和装入类文件 中的类。 由于 Java 的跨平台性,经过编译的 Java 源程序并不是一个可执行程序,而是一 个或多个类文件。当 Java 程 ...
分类:
其他好文 时间:
2020-06-07 16:43:24
阅读次数:
70
前言 在学习java之前,我们学习了C语言。有了一定的编程基础,java学起来感觉并没有C语言那么艰难(其实C语言学起来也没那么难)。后来知道了C语言是面向过程的,是很多基层的语言,比如单片机(恰好这个学习也由单片机)。Java是面向对象编程的,而且有着强大的类库支持着,感觉很多都是可以直接拿来用的 ...
分类:
编程语言 时间:
2020-06-07 14:30:44
阅读次数:
65
1.系统启动流程 开机 >BIOS自检(需要检测的设备是否正常) >磁盘的MBR分区 >BootLoader(引导加载器)加载内核 >识别各分区的文件系统 2.内核 什么是内核:内核其实也是一个软件(例如Linux内核用C语言开发),存放在磁盘的某个地方(例如sda1分区)。 不同的操作系统(内核不 ...
分类:
其他好文 时间:
2020-06-05 15:34:03
阅读次数:
93
SPI SPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能 ...
分类:
其他好文 时间:
2020-06-05 13:06:45
阅读次数:
46
package { import flash.display.Sprite; import flash.events.Event; import flash.filesystem.File; import flash.filesystem.FileMode; import flash.filesys ...
分类:
其他好文 时间:
2020-06-02 16:11:08
阅读次数:
82
前言 我们在IDE中编写的Java源代码被编译器编译成.class的字节码文件。然后由ClassLoader(类加载器)负责将这些.class文件加载到JVM中去执行。 ClassLoader Bootstrap ClassLoader(启动类加载器) C++实现 在java里无法获取 负责加载<J ...
分类:
其他好文 时间:
2020-06-02 10:58:15
阅读次数:
47
加载器从最底层开始往上的顺序 BootStrap ClassLoader:rt.jar,C++实现,虚拟机的一部分 Extention ClassLoader: 加载扩展的jar包 App ClassLoader:指定的classpath下面的jar包 Custom ClassLoader:自定义的 ...
分类:
其他好文 时间:
2020-06-02 10:56:13
阅读次数:
39
Preload 作为一个新的web标准,旨在提高性能和为web开发人员提供更细粒度的加载控制。Preload使开发者能够自定义资源的加载逻辑,且无需忍受基于脚本的资源加载器带来的性能损失。 <link> 标签的rel属性preload 可以在页面中的header部分中申明一些资源的获取请求,可以指定 ...
分类:
其他好文 时间:
2020-06-02 09:47:45
阅读次数:
92
虚拟机类加载机制是把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型。?需要注意的是Java语言与其他编译时需要进行连接工作的语言不通,它的连接过程是在程序运行期间完成的,这样会在类加载时稍微增加一些性能开销,但是却能为Java应用程序提供高度的灵活性。例如,如果编写一个使用接口的应用程序,可以等到运行时再指定其实际的实现。通过
分类:
编程语言 时间:
2020-06-01 10:28:39
阅读次数:
57
加载–>连接->初始化 父类静态变量、 父类静态代码块、 子类静态变量、 子类静态代码块、 父类非静态变量(父类实例成员变量)、 父类构造函数、 子类非静态变量(子类实例成员变量)、 子类构造函数。 1.静态代码块总是最先执行的; 2.子类和父类的静态代码块都执行完之后,在执行父类的非静态代码块和父 ...
分类:
其他好文 时间:
2020-06-01 00:28:53
阅读次数:
81