上一页 1 ··· 8 9 10 11 12 13 下一页
摘要: 每个栈帧中包含: 局部变量表(Local Variables) 操作数栈(Opreand Stack) 或表达式栈 动态链接 (Dynamic Linking) (或指向运行时常量的方法引用) 动态返回地址(Return Address) (或方法正常退出或者异常退出的引用的定义) 一些附加信息 操 阅读全文
posted @ 2020-06-05 16:07 叮叮叮叮叮叮当 阅读(802) 评论(0) 推荐(0) 编辑
摘要: 每个栈帧中包含: 局部变量表(Local Variables) 操作数栈(Opreand Stack) 或表达式栈 动态链接 (Dynamic Linking) (或指向运行时常量的方法引用) 动态返回地址(Return Address) (或方法正常退出或者异常退出的引用的定义) 一些附加信息 局 阅读全文
posted @ 2020-06-05 15:50 叮叮叮叮叮叮当 阅读(1864) 评论(0) 推荐(0) 编辑
摘要: 虚拟机栈即是程序运行时的单位,而堆是数据存储的单位。换句话说,栈解决的是程序运行的问题,即程序如何执行,如何处理数据,而堆是解决数据的存储问题,数据存在哪,放在哪 虚拟机栈细节如下图所示,其中当前栈帧中包含 局部变量表、操作数栈、动态链接、本地返回值。另外对于栈来说,每个线程在创建时都会创建一个虚拟 阅读全文
posted @ 2020-06-05 15:06 叮叮叮叮叮叮当 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 简介 项目中编写API的时候因为要处理异常,所以代码中最常见的就是try-catch-finally,有时一个try,多个catch,代码既不美观,写的时候还很麻烦,Spring中提供了处理全局异常的方式,一个项目中只需要定义一次就不用在四处try-catch了,省时省力又优雅。 用法 Spring 阅读全文
posted @ 2020-06-05 13:14 叮叮叮叮叮叮当 阅读(689) 评论(0) 推荐(0) 编辑
摘要: 简介 Java8除了有较大更新的 lambda、 Stream ,还推出了全新的日期时间API。Java之前处理日期、日历和时间的不足之处主要有: 日期类型为可变类型,非线程安全使其应用非常受限 没有引入时区,不支持国际化,因此引入了java.util.Calendar和java.util.Time 阅读全文
posted @ 2020-06-05 11:12 叮叮叮叮叮叮当 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 程序计数器(PC Register) 这里的计数器(Program Counter Register)并非为广义上所指的物理寄存器,JVM中的PC寄存器(程序计数器)是对物理PC寄存器的一种抽象模拟,相当于IDE中的光标索引值,行号,表示当前正在编辑的行号。 PC寄存器用来存储指向下一条指令的地址, 阅读全文
posted @ 2020-06-04 14:26 叮叮叮叮叮叮当 阅读(733) 评论(0) 推荐(1) 编辑
摘要: 运行时数据区 class文件使用类加载子系统进行加载,经过加载、链接、初始化三个过程后进入方法区。接下来需要使用执行引擎进行执行并依赖于运行时数据区 如图所示,相同灰色为线程私有,绿色为多个线程共享的 线程是一个程序里的运行单元,jvm允许一个应用有多个线程并行执行,即多线程思想。每个线程独立包括程 阅读全文
posted @ 2020-06-04 12:34 叮叮叮叮叮叮当 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 类加载子系统 类加载子系统的主要功能是将本地物理文件加载到内存中,其结构如下所示: 1、加载(Loading) 通过一个类的全限定名获取定义此类的二进制文件字节流。 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。 在内存中生成一个代表这个类的java.lang.Class对象,作为方 阅读全文
posted @ 2020-06-04 11:12 叮叮叮叮叮叮当 阅读(478) 评论(0) 推荐(0) 编辑
摘要: 整个jvm的运行流程图如上所示,首先需要进行加载class文件,然后使用类加载子系统将class翻译解析导入内存,在内存中分别导入到对应的运行时数据区,然后执行引擎开始执行,对于需要的数据在对应的区域进行获取。 本文基于Hotspot虚拟机,采用的是解释器与即时编译器(JIT)并存的架构。 整体的结 阅读全文
posted @ 2020-06-04 10:36 叮叮叮叮叮叮当 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。下面就介绍一些常见的ID生成策略。 1. 数据库自增长序列或字段 最常见的方式。利用数据库,全数据库唯一。 优点: 1 阅读全文
posted @ 2020-05-11 21:50 叮叮叮叮叮叮当 阅读(755) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 下一页