
JAVA
coloemmy
渣渣硕在读
展开
-
JVM:虚拟机字节码执行引擎
《深入理解Java虚拟机》周志华第八章简要回顾虚拟机字节码执行引擎本章主要从概念模型的角度来讲解虚拟机的方法调用和字节码执行运行时栈帧结构Java虚拟机以方法作为最基本的执行单元,“栈帧”则是用于支持虚拟机进行方法调用和方法执行背后的数据结构,也是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧存储了方法的局部变量表、操作数栈、动态连接和方法返回地址等信息。每一个方法从调用至执行结束的过程,都对应着一个栈帧在虚拟机里面从入栈到出栈的过程。在编译Java源代码的时候,栈帧中需要多大的局部变量表,需要.原创 2020-11-12 16:15:45 · 102 阅读 · 0 评论 -
JVM:虚拟机类加载机制
虚拟机类加载1.类加载的时机一个类型从被加载到虚拟机内存中开始,到卸载出内存开始,它的整个生命周期将会经历加载、验证、准备、解析、初始化、使用和卸载七个阶段,其中验证、准备和解析三个部分统称为连接。其中加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,类型的加载过程必须按照这种顺序按部就班地开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段之后再开始,这是为了支持Java语言的动态时绑定特性(也称为动态绑定或晚期绑定)。对于初始化阶段,有且只有六种情况必须立即对类进行“初始化”:&nb原创 2020-11-11 10:56:58 · 118 阅读 · 0 评论 -
JVM:经典垃圾回收器简要总结
经典垃圾回收器Serial收集器单线程工作的收集器。低延迟。它的单线程意义不仅仅是它只会一个处理器或一条收集线程去完成垃圾收集工作,更强调在它进行垃圾收集时,必须暂停其他工作线程,直到它收集结束。相较于其他收集器而言,其简单而高效,内存消耗(垃圾回收时存储的额外信息)小,对于单处理器来说,没有线程交互的开销,可以获得最高的单线程收集效率。Serial收集器对于运行在客户端模式下的虚拟机来说是一个很好的选择。ParNew收集器Serial收集器的多线程版本。低延迟,基于标记-复制。JDK9开始,只原创 2020-11-06 15:08:15 · 134 阅读 · 0 评论 -
JVM:HotSpot的算法实现细节
目录HotSpot的算法实现细节1. 根节点枚举2.安全点3.安全区域4.记忆集与卡表5.写屏障6.并发的可达性分析HotSpot的算法实现细节1. 根节点枚举所有收集器在根节点枚举时都必须暂停用户线程。当用户线程停顿下来以后,并不需要一个不漏地检查完所有执行上下文和全局引用位置。在HotSpot的解决方案中,使用一组称为OopMap的数据结构来直接得到哪些地方存放着对象的引用。一旦类加载动作完成,HotSpot就会把对象内什么偏移量上是什么类型的数据取出来,在即时编译的过程中,也会在特定的位置记录原创 2020-11-04 23:00:19 · 396 阅读 · 0 评论 -
JVM:关于StringTable 串池
JDK1.8的规则String s1 = "a";// 从串表(字符串常量池)中找是否有a这个常量,如果没有,将a添加到串表中(串表为哈希表,每个值只有1份),并将a赋值给s1这个变量String s2 = "b";// 同s1的过程String s3 = "ab";// 同s1的过程String s4 = s1 + s2; // 底层先创建一个StringBuffer,然后通过append()方法拼接字符串,最后通过一个new String("ab") 来创建一个新的字符串对象,存原创 2020-10-26 16:08:07 · 178 阅读 · 0 评论 -
JavaWeb小项目 博客系统,附源码地址(Servlet+JSP+MySQL+HTML+AJAX)
博客系统关于此博客系统技术使用后端使用了Servlet+JSP+MySql 前端使用了CSS+JQuery+Ajax 数据库建了5张表,随着项目进行的时候发现建表可能不是那么合理写博客和展示博客使用的是Editor.md插件有一些细节没有处理,但是此项目可以总结javaweb的一些主要知识项目地址,https://github.com/ZhaoShiyi-gh/MyBlog...原创 2020-07-30 17:48:52 · 915 阅读 · 3 评论 -
maven与IDEA的相关配置
maven与IDEA的相关配置1. maven的下载maven下载点击download,出现以下界面下载红框的内容2.maven安装maven下载后,解压到一个没有空格的路径下面,我就解压在安装软件的目录下面E:\ProgramFile\apache-maven。bin:存放maven命令boot:存放maven自身的引导程序conf:存放相关的配置文件,如setting.xmllib:存放maven自身所需要的的jar包maven已经可以使用(jdk必须安装配置)3 ma原创 2020-06-28 16:36:55 · 567 阅读 · 0 评论