美文网首页
Java字节码

Java字节码

作者: Drew_MyINTYRE | 来源:发表于2020-10-14 09:28 被阅读0次

Java字节码

编辑.java文件,生成字节码文件

javac TestCode.java

反编译字节码文件

javap -verbose TestCode.class

源代码中的各种变量,关键字和运算符号的语义最终都会编译成多条字节码命令。

640.png

关于字节码的类型对应如下:

641.png
对于数组类型,每一位使用一个前置的"["字符来描述,如定义一个java.lang.String[][]类型的维数组,将被记录为"[[Ljava/lang/String;"
642.jpg

虚拟机的主要任务是装载class文件(ClassLoader完成)并执行其中的字节码,在一个Java虚拟机中有可能存在多个类加载器。

当JAVA虚拟机运行一个程序时,相关信息被组织到“运行时数据区”。

  • 方法区

方法区用来存储解析被加载的class文件的相关信息。

当程序运行时,虚拟机会把所有该程序在运行时创建的对象都放到堆中。

  • PC寄存器

PC寄存器主要用来存储线程。当新创建一个线程时,该线程都将得到一个自己的PC寄存器(程序计数器)以及一个java栈。

  • 栈区

Java栈是由许多栈帧组成的,一个栈帧包含一个Java方法调用的状态,当线程调用一个方法时,虚拟机压入一个新的栈帧到该线程的Java栈中,当该方法返回时,这个栈帧从Java栈中弹出。

相关文章

  • 字节码引用检测原理与实战

    一、字节码与引用检测 1.1 Java字节码 本章中的字节码重点研究Java 字节码,Java字节码(Java b...

  • 程序员练级攻略(2018):Java底层知识

    Java 字节码相关 首先,Java 最黑科技的玩法就是字节码编程,也就是动态修改或是动态生成 Java 字节码。...

  • Java并发机制的底层原理

    Java程序执行:Java代码→Java字节码→字节码被类加载器加载到JVM里,JVM执行字节码→转化为汇编指令在...

  • DVM执行 java 程序的工具

    jvm 执行字节码原理:java 程序运行时,是由一个 java 虚拟机来解释 java 字节码的,它将这些字节码...

  • Java字节码

    参考链接:一文让你明白Java字节码 Java字节码 Java虚拟机字节码指令 Java号称是一门“一次编译到处运...

  • Javassist指引(一)

    原文链接 [TOC] 1. 读写字节码 1.1概述 Javassist是一个Java字节码类库。Java的字节码是...

  • Javassist 指南1

    1、读写字节码 Javassist 是一个能处理 Java字节码 的类库,Java字节码存储在class文件中,每...

  • Java并发机制的底层实现原理

        Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为...

  • 并发 - Java并发机制的底层实现原理

    一、概述 Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化...

  • 简单读懂 Java 字节码

    读懂字节码有助于更好的理解 Java 编译器的工作原理 Java 字节码(Java bytecode)是 Java...

网友评论

      本文标题:Java字节码

      本文链接:https://www.haomeiwen.com/subject/qeivpktx.html