![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
文章平均质量分 76
wL魔法师
这个作者很懒,什么都没留下…
展开
-
【JVM】方法区
方法区(Method Area)与Java堆一样,是各个线程共享的内存区域,它用于存储已被虚拟机加载的类型信息、常量、静态变量、即时编译器编译后的代码缓存等数据。(如图所示,出自《深入理解Java虚拟机》)方法区具体包含内容为:类型信息对每个加载的类型(类class、接口interface、枚举enum、注解annotation),JVM方法区中存储以下类型信息:这个类型的完整有效名称(全名=包名.类名)、这个类型直接父类的完整有效名(对于interface或是java.lang.Ob.原创 2022-05-23 11:15:57 · 1641 阅读 · 0 评论 -
【JVM】 类加载器(ClassLoader)
ClassLoader是Java的核心组件,所有的Class都是由ClassLoader进行加载的,ClassLoader负责通过各种方式将Class信息的二进制数据流读入JVM内部,在堆中创建实例,在方法区中创建Class文件的数据结构,把堆中的实例链接到方法区的数据结构上。(如下图所示)然后交给Java虚拟机进行链接、初始化等操作、因此,ClassLoader在整个装载(加载)阶段,只能影响到类的加载,而无法通过ClassLoader去改变类的链接和初始化行为。因为Java虚拟机的设计者当.原创 2022-05-23 10:53:14 · 414 阅读 · 0 评论 -
[JVM]类的加载过程及实践
类加载顺序,以及实例原创 2022-05-21 20:32:11 · 297 阅读 · 0 评论 -
【JVM】类加载子系统文件结构
JVM Class文件结构原创 2022-05-20 17:20:53 · 103 阅读 · 0 评论 -
【JVM】finalize的补充
1. finalize特性finalize()方法是protect类型修饰允许在子类中被重写,用于对象被回收时进行资源释放。通常在这个方法中进行一些资源释放和清理的工作,比如关闭文件、套接字和数据库连接等。当垃圾回收器发现没有引用指向一个对象,即:垃圾收集此对象之前,总会先调用这个对象的finalize()方法。Java语言提提供了对象终止(finalization)机制来允许开发人员提供对象被销毁之前的自定义逻辑。2. 非必要不主动调用finalize()方法不主动调用某个对象的fin原创 2022-05-15 23:38:18 · 130 阅读 · 0 评论 -
Java运行时一个类是什么时候被加载的?
A question a day ,get offer every day.-- 未来的魔法师 一个类在什么时候开始被加载,《Java虚拟机规范》中并没有进行强制约束,交给了虚拟机自己去自由实现。HotSpot虚拟机是按需加载,在需要用到该类的时候加载这个类。工程首先加载rt目录下的java基础类库,然后加载主程序类,然后用到什么类加载什么类。 创建Demo01为主类、Person为被调用类,执行main()方法,实例化Person类,并调用person类中的work...原创 2022-04-09 09:56:40 · 3736 阅读 · 0 评论 -
继承时父子类的初始化顺序是怎样的?
A question a day ,get offer every day.-- 未来的魔法师1./**2.*@Authorjlu3.*@Date11:082022/4/124.*@Description:5.**/6.//父类7.publicclassParent{8.//静态变量9.publicstaticStringp_StaticField="父类--静态变量";10.11....原创 2022-04-12 15:01:07 · 231 阅读 · 0 评论 -
[JVM] java虚拟机 堆
jvm、堆、GC原创 2022-05-01 14:59:21 · 738 阅读 · 0 评论 -
[JVM] Java虚拟机栈
1. 概念Java虚拟机栈(Java Virtual Machine Stacks)是线程私有的,栈使用的内存不需要保证是连续的,栈帧存储了方法的局部变量表、操作数栈、动态连接和方法返回地址等信息。每一个方法从调用至执行完成的过程,都对应着一个栈帧在虚拟机栈里从入栈到出栈的过程。Java虚拟机规范即允许Java虚拟机栈被实现成固定大小(-Xss),也允许通过计算结果动态来扩容和收缩大小。如果采用固定大小的Java虚拟机栈,那每个线程的Java虚拟机栈容量可以在线程创建的时候就已经确定,...原创 2022-04-28 22:28:32 · 3796 阅读 · 2 评论