E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
《深入理解java虚拟机》
深入理解java虚拟机
之——类的加载过程
深入理解JVM之——类加载过程在理解类加载之前先了解一下类加载器。顾名思义,类加载器就是将java字节码文件加载到JVM中,在虚拟机中,不同类加载器加载的类一定是不相同的,即使这两个类是一模一样的。举个例子,针对同一个类A,加载器1和加载器2加载A。在虚拟机的世界里,这两个加载器加载的“同一个类A”在虚拟机中是不同的,我们需要的是即使是不同的加载器加载同一个类,在虚拟机中也是同一个类,而事实上,虚
repator
·
2020-09-14 14:59
深入理解java虚拟机
jvm
JVM类加载过程
类加载机制
类加载器
双亲委派模型
java垃圾回收之Minor GC和Major GC
深入理解Java虚拟机
:JVM高级特性与最佳实践对MinorGC和MajorGC做点笔记新生代GC(MinorGC):指发生在新生代的垃圾收集动作,因为Java对象大多都具备朝生夕灭的特性,所以MinorGC
doubel_山里娃
·
2020-09-14 14:53
Java语言
深入理解JAVA虚拟机
之———JVM内存结构
Java从1.7到1.8,虚拟机管理的内存结构方面发生了一些变化,下面主要介绍jdk1.7,1.8的虚拟机运行时内存结构划分。下面介绍每一部分:程序计数器:线程私有,该部分不会抛出OOM,生命周期和线程相同。虚拟机中唯一一个不会抛出OOM错误的区域。当前线程所执行的字节码的行号指示器。字节码解释器工作时根据程序计数器来选取要执行的下一条字节码指令,分支,循环,跳转,异常处理,线程恢复都需要这个计数
repator
·
2020-09-14 12:29
深入理解java虚拟机
JVM内存结构
深入理解JVM
深入理解Java虚拟机
之(二):jdk1.7和jdk1.8 JVM管理的内存结构
1:一和二讲解jdk1.7的内存分布三讲jdk1.8的内存分布。2:JDK1.7及之后版本的JVM已经将运行时常量池从方法区中移了出来,在Java堆(Heap)中开辟了一块区域存放运行时常量池。3:JDK1.8开始,取消了Java方法区,取而代之的是位于直接内存的元空间(metaSpace)。当然方法区和元空间存储内容是一样的。一:java代码编译执行过程(粗略介绍)1.源码编译:通过Java源码
stay hungry,stay you
·
2020-09-14 12:19
java
深入理解Java虚拟机
jdk1.8下jvm虚拟机内存结构
程序计算器java虚拟机栈*本地方法栈方法区总结前言前面说了jvm的概念,不太理解的朋友可以看看我上一篇博客,不过jvm也是比较复杂的一个东西,想深入了解看一两篇文章是不够的,可以去看看《
深入理解java
Jiang呀
·
2020-09-14 12:18
jvm
jvm
java
jdk
栈
ubuntu下编译openjdk7
这两天在看《
深入理解java虚拟机
》第二版,第一章就是介绍自己动手编译一个openjdk。于是乎,本人也想动手试试,实践才能出真知。在编译的过程中也发现了好多的问题。
threedong
·
2020-09-14 11:15
java
Java不仅仅是一门编程语言
深入理解Java虚拟机
读书笔记Java不仅仅是一门编程语言,它是一个技术体系。
ETLshow
·
2020-09-14 06:19
Java虚拟机
面试必备:一篇关于Java内存的探究
摘要:本博客为《
深入理解java虚拟机
》的学习笔记,如有写的不妥之处,欢迎fadeback。有关Java内存的误解初学java好多人都会误以为Java内存分为三块:方法区、堆内存、栈内存。
Albert_zhan_peng
·
2020-09-14 05:01
Java技术总结
Java
面试必备
Java干货
通俗易懂
工欲善其事必先利其器,何不给IDEA来一次调优呢?
前言最近在读周志明大大的《
深入理解Java虚拟机
》,看到大大对ecplise进行调优,手痒痒,想着亲手给自己的IDEA也做一次调优,正好最近电脑升级了一次内存,之前的配置肯定也不适合了,废话不多说,直接开搞
java.util.Man
·
2020-09-13 19:42
JVM
java
jvm
简单理解了下java中的垃圾回收机制
看了以下几本书中对垃圾回收机制的描述:《
深入理解java虚拟机
》、《java编程思想》、《疯狂Java讲义》、《Java程序员面试宝典》,真的都看了,然后也晕了。
NIMANCY
·
2020-09-13 18:46
java基础
java
垃圾回收
cGlib使用
深入理解Java虚拟机
,第二章第58页用到了cGlib。
i_chase
·
2020-09-13 16:25
[bigdata-100] 从拉勾统计出来的 java架构师 技能树
1.基础知识java语言及其体系Java多线程、高并发、高性能Java设计模式Socket、nio通信编程熟悉TCP/IP、HTTP等各种常用通讯协议maven项目管理多国语言架构设计和开发
深入理解Java
未济2019
·
2020-09-13 13:08
程序员的书(转)
5版图解HTTP极客时间:深入浅出计算机组成原理二、Java书籍Java基础《Java核心技术:卷1基础知识》HeadFirstJava(第二版·中文版)视频课程Java进阶Java编程思想(第4版)
深入理解
鼬花园
·
2020-09-13 08:17
程序实践
自顶向下的Java虚拟机
最近看了《
深入理解Java虚拟机
》这本书,感觉书中的章节写的很零散,如果能够通过一个完整的例子将所有的知识点串联起来,将整个故事讲清楚,无疑对Java虚拟机运作原理的学习有更好的帮助,本文之所以称为自顶向下的
Wenqi_B
·
2020-09-13 04:58
java基础学习
(十三)synchronized
《
深入理解Java虚拟机
》一句话:当多个线程访问同一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替运行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获取正确的结果
HaC200
·
2020-09-13 04:15
Java多线程
java
多线程
几张图轻松理解String.intern()
在翻《
深入理解Java虚拟机
》的书时,又看到了2-7的String.intern()返回引用的测试。
阳光石头
·
2020-09-13 04:36
java基础
备战秋招—JVM之背下这篇保证你与面试官聊起来滔滔不绝
想要面试时将知识点形成体系的回答出来还是得看书,JVM一直是近年大厂面试java工程师的高频考点,于是博主最近看了《
深入理解Java虚拟机
》,网上的视频以及各种博客,将JVM相关知识进行一个整体梳理。
3号深海鱼,强势悍跳预言家
·
2020-09-13 03:12
备战秋招
java
jvm
JVM系列文章(一):Java内存区域分析
所有内容均参考自《
深入理解Java虚拟机
:JVM高级特性与最佳实践》(第二版),感谢作者。本文是系列文章第一篇,讲述的是Java内存区域,即在虚拟机上,数据是怎么存储的。
JocelynBGM
·
2020-09-13 03:32
jvm
内存
深入理解Java虚拟机
读书笔记之:第5章 Java虚拟机
Java虚拟机之所以被称之为是“虚拟”的,就是因为它仅仅是由一个规范来定义的抽象计算机。因此,要运行某个Java程序,首先需要一个符合该规范的具体实现。Java虚拟机是什么要理解Java虚拟机,你首先必须意识到,当你说“Java虚拟机”时,可能指的是如下三种不同的东西:1)抽象规范2)一个具体的实现3)一个运行中的虚拟机实例当运行一个Java程序的同时,也就在运行了一个Java虚拟机实例。每个Ja
javaeeceo
·
2020-09-13 00:00
Java虚拟机(JVM)
读书笔记
Java四大名著--effective java
然后就是
深入理解Java虚拟机
一书,还没看完,看到第二章,讲的很详细,不过内容比较复杂,需要一些基础。
My和风大福
·
2020-09-12 19:49
学习资料
面试题,谈谈你对java垃圾收集器的理解
内容来自周志明著《
深入理解Java虚拟机
》的总结1、哪些内存需要回收通过根搜索法,对经过一次标记之后,仍没有复活的对象。
s20081294
·
2020-09-12 16:03
jvm运行时数据区的理解
前言对于java学习来说,若是只会实现一些简单的CRUD肯定是不够的,想要理解和深入学习java肯定还是药理解一下底层实现,jvm的机制和原理是很好的学习内容,所以读了《
深入理解java虚拟机
》。
FenG·
·
2020-09-12 12:20
java
读书笔记
Java自动内存管理机制(一) JVM、Class
详细之处可参阅相关书籍或博客:《
深入理解Java虚拟机
-JVM高级特性与最佳实践》周志明著1.JVM概念JavaVirtrualMachine(JVM)JRE的一部分,一个操作系统的一个应用程序一个进程
Xiang-Gen
·
2020-09-12 09:17
Java
java类加载过程及初始化顺序
类加载过程(参考
深入理解java虚拟机
7.3节内容)1.加载(通过类的全限定名获取二进制字节流、二进制字节流按一定格式存到方法区中、内存中生成类的java.lang.Class对象、)2连接(验证:确保
nice_hui_
·
2020-09-12 06:15
java基础
JVM
【JVM】HotSpot VM GC 的种类
本系列是用来记录《
深入理解Java虚拟机
》这本书的读书笔记。方便自己查看,也方便大家查阅。欲速则不达,欲达则欲速!
素小暖
·
2020-09-12 01:32
#
深入理解Java虚拟机
JVM Knowleadge-垃圾回收GC Roots Tracing
本文参考了周志明的《
深入理解Java虚拟机
:JVM高级特性与最佳实践》,这本书写的非常好!极力推荐!》JVM中对内存进行回收时,需要判断对象是否仍在使用中,可以通过GCRootsTracing辨别。
time_hunter
·
2020-09-11 16:31
JVM
详解JVM中的内存模型是什么?
强烈推荐不管是找工作还是提升水平,都建议读一下《
深入理解Java虚拟机
》这本书,详细讲解了JVM中的内存管理、类加载过程、垃圾回收以及最重要的性能调优实战。
编程开发分享者
·
2020-09-11 12:00
深入理解Java虚拟机
-- java虚拟机字节码执行引擎浅析
本文是
深入理解java虚拟机
的读书笔记执行引擎是java虚拟机的核心组成部分之一。我们知道,javac编译器完成了程序代码经过词法分析、语法分析到抽象语法树、再遍历语法树生成线性的字节码指令流的过程。
mine_song
·
2020-09-11 12:15
深入理解Java虚拟机
深入理解Java虚拟机
之对象的内存布局、访问定位
内存布局在HotSpot虚拟机中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(InstanceData)、对齐填充(Padding)。对象头对象头分为两个部分,第一部分存储自身的运行时数据,如对象的哈希码、GC分代年龄、锁标志位等。这部分数据的长度在32位和64位的虚拟机中分别为32bit和64bit,官方称它为“MarkWorld”,MarkWord被设计为一个非固
weixin_34288121
·
2020-09-11 11:03
java永久代,元空间,常量池,方法区详解
1,java内存模型简介《
深入理解java虚拟机
》里将java内存分为如下五个模块:堆-所有线程共享的,主要用来存储对象。其中,堆可分为:新生代和老年代两块区域。使用NewRatio参数来设定比例。
qq_31459039
·
2020-09-11 07:06
JAVA编程相关
类初始化和实例初始化
TableofContents一、类的初始化时机二、类初始化过程三、实例初始化四、方法重写override五、静态结构和非静态结构一、类的初始化时机在《
深入理解java虚拟机
》这本书里面讲到了类的六个初始化时机创建类的实例访问类的静态变量
yubin1285570923
·
2020-09-11 06:31
Java
在服务器上执行临时代码
手动实现一个简单的远程执行功能,用户在服务端执行临时代码代码与灵感来自《
深入理解java虚拟机
》第二版程序实现思路1.如何编译提交到服务器的java代码2.如果执行编译后的代码3.如何收集java代码的执行结果解决方案
wangzhetianxia8
·
2020-09-11 04:13
jvm
《
深入理解java虚拟机
》---性能检测与故障处理工具(4)
经过前面的学习,我们已经掌握虚拟机运行的基本理论知识,但是我们最终的目的还是将这些知识应用到实际工作中去。一、JDK的命令行工具java开发人员都应该知道JDK的bin目录中有“java.exe”和“javac.exe”两个命令行工具,但是当我们打开时候会发现里面还有很多其他的工具,接下来就来说说几款有用的工具:jps:虚拟机进程状况工具,功能和UNIX中的ps命令类似,可以列出正在运行的虚拟机进
hy_coming
·
2020-09-11 01:23
JVM
虚拟机
命令
可视化
工具
内存模型
整理部分java虚拟机性能监测的命令
在《
深入理解java虚拟机
》学习的第四章,Java虚拟机自身为我们提供了多种虚拟机性能监控与故障处理工具,这里做一下记录,方便以后查阅。
Jalen备忘录
·
2020-09-11 00:29
Java
深入理解java虚拟机
(十四)正确利用 JVM 的方法内联
在IntelliJIDEA里面Ctrl+Alt+M用来拆分方法。选中一段代码,敲下这个组合,非常简单。Eclipse也用类似的快捷键,使用Alt+Shift+M。我讨厌长的方法,提起这个下面这个方法我就觉得太长了:publicvoidprocessOnEndOfDay(Contractc){if(DateUtils.addDays(c.getCreated(),7).before(newDate(
张小琦
·
2020-09-10 22:43
Java
虚拟机
深入理解Java虚拟机
JVM内存区域,分代策略,垃圾收集算法,垃圾收集器
本文整理自周志明老师的《
深入理解Java虚拟机
-JVM高级特性与最佳实践》第3版的第二章和第三章。
JohnArchie
·
2020-09-10 20:10
Java学习
jvm
java
《
深入理解Java虚拟机
》----JVM学习笔记整理
基本概念JVM(JavaVirtualMachine)是运行Java字节码的虚拟机,其包括一套字节码指令集,一组寄存器,一个栈,一个垃圾回收堆和一个存储方法域。JVM有针对不同系统的特定实现(Windows,Linux,macOS),将Java字节码(.class文件)编译成机器码,因此字节码和JVM共同造就了Java语言“一次编译,到处运行”的特点。运行过程Java源文件->编译器->字节码文件
汐裘
·
2020-09-10 20:56
面试基础知识
JVM
深入理解java虚拟机
学习笔记
1.JDK(JavaDevelopmentKit)=Java程序设计语言+Java虚拟机+JavaAPI类库2.Java堆溢出Java存储用于存储对象实例,我们只要不断的创建对象,并且保证GCRoots到对象之间有可达路径来避免垃圾回收机制来清除这些对象,就会在对象到达最大堆的容量限制后产生内存溢出异常3.关于虚拟机栈和本地方法栈,在Java虚拟机规范中描述了两种异常:如果线程请求的栈深度大于虚拟
携手凡生
·
2020-09-10 17:38
Java
秋招准备之——Java虚拟机
数据结构全系列2.计算机网络知识整理(一)3.计算机网络知识整理(二)4.Java虚拟机知识整理5.计算机操作系统6.深入理解HashMap7.深入理解ConcurrentHashMap前段时间看了周志明老师的《
深入理解
MeteorChenBo
·
2020-09-10 16:05
复习
《
深入理解Java虚拟机
》学习笔记(6)--程序编译与代码优化
早期(编译期)优化Javac这类编译器对代码的运行效率几乎没有任何优化措施。对性能的优化集中到了后端的即时编译器中,这样可以让那些不是由Javac产生的Class文件也同样能享受到编译器优化所带来的好处。Javac做了许多针对Java语言编码过程的优化措施来改善程序员的编码风格和提高编码效率。相当多新生的Java语法特性,都是靠编译器的“语法糖”来实现,而不是依赖虚拟机的底层改进来支持。Javac
halfclear
·
2020-09-10 13:31
java
从头开始学习JVM(八)—— Java的热点与即时编译
本系列内容根据自己的学习和理解的基础上,并参考《
深入理解Java虚拟机
》一书介绍的知识所写。如果有写的不对的地方,请各位多多提点。从头开始学习JVM(八)——Java的热点与即时编译Java的热
尼尧Nier
·
2020-09-10 13:53
JVM与计算机基础
无责任书评:每个Java程序员都应该
深入理解Java虚拟机
!
Java这门语言的发展是很有意思的,它不像Python,Ruby等完全是开源社区驱动,也不像C#,VB.NET主要由微软操刀。它是一个以Oracle(之前是Sun)为主,各大巨头一起参与,一起制定标准的一门语言。想对Java添加一点特性,得走JCP流程,巨头们要审查,看看对自己是否有利,然后投票决定。在Java的生态中,官方曾经制定了很多技术和标准,什么Applet,JSP,EJB,JSF,Jav
码农翻身
·
2020-09-10 13:34
深入理解JVM学习笔记——第十章 早期(编译期)优化
注:本系列文章均摘录自《
深入理解Java虚拟机
:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了,第十章早期(编译期)优化1.Java语言的”编译期“是一段”不确定“的操作过程
bsr1983
·
2020-09-10 12:40
《
深入理解Java虚拟机
——JVM高级特性与最佳实践》学习笔记——程序编译与代码优化(一)
早期(编译期)优化Javac的编译过程解析与填充符号表过程插入式注解处理器的注解处理过程分析与字节码生成过程Javac编译动作的入口是com.sun.tools.javac.main.JavaCompiler类,上述3个过程的代码逻辑集中在这个类的compile()和compile2()方法中,其中主体代码如下图所示,整个编译最关键的处理就由图中标注的8个方法来完成解析与填充符号表解析步骤由par
benhuo931115
·
2020-09-10 12:46
jvm学习
深入理解java虚拟机
学习笔记(七)--早期(编译期)优化
第十章早期(编译期)优化1、概述java语言的“编译期”是一段“不确定”的操作过程,因为它可能是指一个前端编译器(其实叫“编译器的前端”更准确一些)把*.java转变成*.class文件的过程;也可能是批虚拟机的后端运行期编译器(JIT编译器)把字节码转变成机器码的过程;还可能是指使用静态提前编译器(AOT编译器,AheadOfTimeCompiler)直接把*.java文件编译成本地机器代码的过
lg70124752
·
2020-09-10 10:22
jvm
Java虚拟机模型
参考书籍:《
深入理解Java虚拟机
》JVM模型分为5个运行时数据区域:image.png1.程序计数器:当前线程所执行的字节码的行号指示器,线程私有。2.本地方法栈:执行native方法,线程私有。
纳米君
·
2020-09-08 16:58
JVM类加载机制详解——类加载过程
代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步----《
深入理解Java虚拟机
:JVM高级特性与最佳实践》一、知识铺垫Java虚拟机把描述类的数据从Class文件加载到内存
毛龙蛋
·
2020-08-31 01:49
jvm
java
春招秋招准备
3、
深入理解Java虚拟机
。4、effectiveJava。5、高性能mysql数据库。6、Java并发编程实战。前面是书籍,挑重点看看。后面再看一些tcp/ip、操作系
weixin_30821731
·
2020-08-26 16:28
《
深入理解Java虚拟机
》学习随笔(上)
既然要写java,那么jvm的运行机制还是得略知一二的。一方面搭建运行环境与程序设计需要,另一方面也能帮助理解一些绕的人头疼的脑经转转弯型的面试题。周志明老师在书中介绍了内存管理机制、虚拟机执行子系统、编译和代码优化以及并发方面的内容,而我这里只是将写在OneNote上内存管理机制以及类加载和执行相关的内容搬运过来。优化以及并发等年后再填坑吧。内存管理机制内存划分和异常 内存划分为:程序计数器P
kuzu
·
2020-08-25 14:44
JVM字节码速查表
本文所有的表格均出自《
深入理解Java虚拟机
》这本书的第六章内容。另外,对于一个class文件,jvm提供了一个命令,对
surpassLiang
·
2020-08-25 14:57
Java
上一页
11
12
13
14
15
16
17
18
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他