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