- 博客(8)
- 收藏
- 关注
原创 idea 2021.X 版本 pom.xml 自动保存修改设置
我的 idea 版本是2020.1,使用过程中,每次修改都要手动去点刷新。 如图设置为设置为 Enable auto-reload after any chages完美解决
2021-08-27 21:56:27
842
原创 执行引擎 Execution Engine
解释器和JIT编译器 执行引擎的执行完全依赖PC寄存器。前端编译由javac完成,后端编译由执行引擎完成。 解释器:对字节码采用逐行解释的方式执行,将每条字节码内容翻译为本地机器指令执行 JIT编译器:虚拟机将源代码直接翻译成和本地机器平台相关的机器语言 何时使用JIT编译器? 一个被多次调用的方法,或者是一个方法体内部循环次数较多的循环体都可被称之为“热点代码”,都可以通过JIT编译器编译为本地机器指令。由于这种编译方式在方法执行过程中,因此称之为栈上替换,或简称OSR...
2021-07-18 17:43:10
219
原创 运行时数据区 Runtime Data Area
程序计数器 Program Counter Register 生命周期:与线程相同 占用空间:非常小 多线程:线程私有 存储:当前栈帧的下一步操作指令的地址,及当前线程执行的字节码的行号 GC和Error:没有GC和OOM Java的多线程是通过轮流切换并分配处理器执行时间的方式来实现,任何一个时刻,一个处理器(多核处理器指一个内核)都只会执行一条线程中的指令。为了线程切换后能恢复到正确的执行位置,每条线程都需要一个独立的程序计数器,各线程计数器互不影响,独立存储。栈帧为java方法,...
2021-07-18 01:16:22
274
原创 类加载器子系统 Class Loader
类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定标识(以CA FE BA BE标识符开头)。 ClassLoader只负责加载class文件,是否可以运行由执行引擎ExecutionEngine决定。 加载类的信息放到方法区的内存空间。除了类信息,方法区还会存放常量池信息,可能还包括字符串字面量和数字常量(class文件中常量池部分的内存映射) 加载阶段loading 通过一个类的全类名获取二进制字节流,将字节流所代表的的静态存储接口转化为方法区的..
2021-07-13 21:53:07
157
原创 Java定时器实现
定时器主要用于处理重复的工作,例如:从某个库定时抓取数据;扫描某一张表格的数据,某个字段值更新时做特定处理等。 首先需要导入maven依赖: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> </depe...
2019-03-12 10:30:26
290
原创 JDK下载问题
本文主要说一下JDK下载的方法,完全免费! oracle下载JDK 作为一枚Java开发,我想大家都知道,首先要准备的就是IDE和JDK,下载JDK通常都是度娘搜索咯! 由于本人也是入行不久,有时候也会遇到一些问题,比如:现在Java已经发布到jdk8u191,但是之前的一些项目也还在之前的1.7或者1.6,那么怎么去下载呢? 百度一查,哟,优快云就有很多下载资源,点进去之后你会看到如下...
2018-10-31 10:07:11
2851
原创 Java开发错误码积累
注:本文章用于总结一些开发过程中遇到的问题以及解决方法,仅做学习笔记之用,方便日后查阅。内容有来源于网路或者个人。 eclipse报错:java compiler level does not match the version of the installed java project facet 当你接手前人留下的项目代码时,一定踩过很多坑,这个就是其中之一。 解决方法:打开你从sv...
2018-10-30 17:33:48
348
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人