对于被装载的每个类,虚拟机都会把这个类的类型信息存储在方法区,方法区中存储一下信息:eg: public class Test extends superclass implements interface1, interface2
1, 类的全限定名
2, 类的超类的全限定名
3, 这个类是类型还是接口
4, 类的访问修饰符
5, 超接口的权限定名的有序类表
6, 该类的常量池,
该类型所使用常量的一个有序集合,包括直接类型和对其他类的,字段和方法的符号引用。
7, 字段信息
字段名,字段类型,字段的修饰符(eg:private String field)
8, 方法信息
方法名,方法的返回信息,方法的修饰符(eg:public void method),如果一个方法不是抽象的和本地的还将保存一下信息:方法的字节码,操作数栈和方法的栈帧中的局部变量的大小,异常表
9, 除了常量以外的所有类变量
类变量是多有类实例共享的,但是没有类实例也可以访问,只与类有关,编译时常量
10, 一个到classLoader的应用
11, 一个到class类的引用
12, 方法表(为了尽可能的提高访问效率,大部分虚拟机对每个装载的费抽象类,都生成一个方法表,把他们当做类型信息放在方法去类。)
方法区同样可以被垃圾回收。
分享到:
相关推荐
深入讲解Java虚拟机系列之方法区 在 Java 虚拟机中,方法区是一块非常重要的区域,它存储了所有类的信息,包括类名、父类、接口、权限修饰符、常量池、变量信息、方法信息、静态变量等。方法区是 Java 虚拟机中的一...
Java 虚拟机的内存结构包括方法区(method area)和堆(heap)。方法区保存了从类文件中解析出来的信息。堆保存了程序执行时创建的对象。每一个线程都有自己的 PC 寄存器(程序计数器)和 Java 堆栈(Java stack)。...
第2章概述Java虚拟机的整体架构,包括class文件格式、数据类型、原始类型、引用类型、运行时数据区、栈帧、浮点算法、异常等,这对理解本书后面的内容有重要帮助;第3章详述如何将Java语言编写的程序转换为Java...
Java虚拟机规范 Java SE 8版-带目录-pdf,本书完整而准确地阐释了Java虚拟机各方面的细节,围绕Java虚拟机整体架构、编译器、class文件格式、加载、链接与初始化、指令集等核心主题对Java虚拟机进行全面而深入的分析...
第1章 :简单地介绍了Java虚拟机的历史并吹捧了←_← 一下Java的平台无关性(一次编译,到处运行); 第2章:概览Java虚拟机整体架构; 第3章:介绍如何将Java语言编写的程序转换为虚拟机指令集; 第4章:定义...
Java虚拟机指令集是虚拟机执行的基本操作单元,每条指令对应一个特定的操作,如加载和存储变量、算术运算、控制流程、对象创建和方法调用等。这些指令是无操作数的,它们的参数通常在操作数栈上找到。Java SE 7版的...
本书摒弃了传统的以解读枯燥的Java虚拟机规范文档和分析繁琐的Java虚拟机源代码的方式来讲解Java虚拟机,取而代之的是,以实践的方式,引导读者如何从零开始构建和实现一个Java虚拟机,整个过程不仅能让读者做到对...
Java虚拟机(JVM)是Java程序运行的基础,它负责执行Java字节码,提供了一个与平台无关的执行环境。JVM规范定义了JVM的结构、指令集和运行时数据区,以及如何执行指令和处理异常。自1999年以来,JVM规范经历了多次...
第二章:java虚拟结构(运行时区域内存:寄存器,java虚拟机栈,java堆,方法去,运行时常量池,本地方法栈); 第三章:为java虚拟机编译; 第四章:Class文件格式; 第五章:加载、链接与初始化
Java虚拟机(JVM)是实现Java技术的关键组件,它为Java程序提供了一个运行环境。Java程序在编写后会被编译成一种称为字节码的中间表示形式,这种字节码可以跨平台运行,因为JVM负责将字节码转换成机器代码。JVM的...
总的来说,本地方法栈和执行引擎是Java虚拟机实现复杂功能的关键组件。本地方法栈使Java能够调用本地库,执行系统级别的操作,而执行引擎则确保字节码的有效执行,优化程序性能。两者共同协作,为Java程序提供了一个...
Java虚拟机的内部结构包括类装载器、运行时数据区、执行引擎、本地方法接口和本地库。其中,类装载器负责加载类文件,运行时数据区存储线程的工作数据,执行引擎解析并执行字节码,本地方法接口允许JVM调用非Java...
Java虚拟机(JVM,Java Virtual Machine)是Java平台的核心组成部分,它负责执行Java程序,为Java代码提供了跨平台的运行环境。Java虚拟机的概念始于Sun Microsystems,现在由Oracle公司继续发展和维护。JVM的设计...
第2章概述Java虚拟机的整体架构,包括class文件格式、数据类型、原始类型、引用类型、运行时数据区、栈帧、浮点算法、异常等,这对理解本书后面的内容有重要帮助;第3章详述如何将Java语言编写的程序转换为Java...
### Java虚拟机规范(JVM)概览 #### 核心概念与重要性 《Java虚拟机规范(JavaSE7版)》是理解Java虚拟机(JVM)运作机制的基石,由Tim Lindholm、Frank Yellin、Gilad Bracha和Alex Buckley等人撰写,后由周志明、...
Java虚拟机(JVM)是Java编程语言的核心组成部分,它为Java程序提供了跨平台的运行环境。Java程序在编写完成后,会被编译成字节码(.class文件),这些字节码可以在任何装有JVM的系统上运行,实现了“一次编写,到处...
本书共分20章,第1-4章解释了java虚拟机的体系结构,包括java栈、堆、方法区、执行引擎等;第5-20章深入描述了java技术的内部细节,包括垃圾收集、java安全模型、java的连接模型和动态扩展机制、class文件、运算及...
随着越来越多的第三方语言(Groovy、Scala、JRuby等)在Java虚拟机上运行,Java...《实战Java虚拟机——JVM故障诊断与性能优化》将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。