jvm
962464i
这个作者很懒,什么都没留下…
展开
-
02.类的加载
- 定义:1.类的加载是指虚拟机将类的.class文件中的二进制数据读入到内存之中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区的数据结构。2.类的加载最终产品是位于堆(heap)区中的Class对象 3.Class对象封装了类在方法区内的数据结构,并且向java程序员提供了访问方法区内的数据结构的接口(这些接口都是反射接口)如图: 然原创 2017-09-28 16:02:14 · 183 阅读 · 0 评论 -
03.类的连接之验证、准备、解析
连接定义: 类被加载后,就进入连接阶段。连接就是将以读入到内存的类的二进制类的数据合并到虚拟机的运行时环境中去。连接有分为三个阶段:验证、准备、解析 下面我就就先看一下验证。类的验证类的验证的内容: - 类文件的结构检查 确保类文件遵从Java类文件的固定格式- 语义检查确保本类本身符合java语言的语法规定,比如验证final类型的类有子类,以及final类型的方法有没有被覆盖。- 字原创 2017-09-29 11:49:03 · 336 阅读 · 0 评论 -
04.类的初始化
认识类的初始化: 在初始化阶段,java虚拟机执行类的初始化语句,为类的静态变量赋予初始值。在程序中, 静态变量的初始化有两种途径: (1)在静态变量的声明处进行初始化 (2)在静态代码块中进行初始化 在下面代码中,静态变量都被显式初始化,而静态变量c没有被显式初始化,它将保持默认值0public class Sample{ public static int a = 1;//在静态原创 2017-09-29 14:21:02 · 251 阅读 · 0 评论 -
01.类的加载、连接、与初始化(概述)
jvm原创 2017-09-28 10:24:07 · 203 阅读 · 0 评论 -
Java并发专题【1】并发编程的优缺点
一直以来并发编程对于刚入行的小白来说总是觉得高深莫测,于是乎,就诞生了想写点东西记录下,以提升理解和堆并发编程的认知。为什么需要用的并发?凡事总有好坏两面,之间的trade-off是什么,也就是说并发编程具有哪些缺点?以及在进行并发编程时应该了解和掌握的概念是什么?这篇文章主要以这三个问题来谈一谈。1. 为什么要用到并发一直以来,硬件的发展极其迅速,也有一个很著名的”摩尔定律”,可...转载 2018-05-21 09:36:48 · 172 阅读 · 0 评论 -
JVM内存模型
内容转自: https://blog.csdn.net/yu_duan_hun/article/details/78212380 抄的抄的抄的。。。。。一、JVM 内存模型Java 虚拟机(Java Virtual Machine=JVM)的内存空间分为五个部分,分别是:程序计数器;Java 虚拟机栈;本地方法栈;堆;方法区。下面对这五个区域展开深入的介绍。...原创 2018-06-04 17:12:41 · 206 阅读 · 0 评论