随笔分类 -  Java虚拟机

摘要:1 什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并向程 阅读全文
posted @ 2018-03-06 13:40 大象踢足球 阅读(234) 评论(0) 推荐(0)
摘要:1、前言 理解JVM的垃圾回收机制(简称GC)有什么好处呢?作为一名软件开发者,满足自己的好奇心将是一个很好的理由,不过更重要的是,理解GC工作机制可以帮助你写出更好的Java程序。 在学习GC前,你应该知道一个技术名词:“stop-the-world” ,无论你选择哪种GC算法,“stop-the 阅读全文
posted @ 2018-03-02 16:58 大象踢足球 阅读(230) 评论(0) 推荐(0)
摘要:JVM在运行时将数据划分为了5个区域来存储,这5个区域图示如下: 其中方法区和堆对是所有线程共享的内存区域;而java栈、本地方法栈和程序员计数器是运行时线程私有的内存区域。 首先我们熟悉一下一个 Java 程序的工作过程。一个 Java 源程序文件,会被编译为字节码文件(以 .class 为扩展名 阅读全文
posted @ 2018-02-23 10:02 大象踢足球 阅读(241) 评论(0) 推荐(0)
摘要:Java程序运行原理 在Java中引入了虚拟机(JVM,Java Virtual Machine)的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。虚拟机在任何平台上都提供给编译程序一个的共同的接口。 编译程序只需要面向虚拟机,生成虚拟机能够理解的字节码(ByteCode)(class文件的 阅读全文
posted @ 2017-04-21 17:34 大象踢足球 阅读(3873) 评论(0) 推荐(0)