当前位置: 移动技术网 > IT编程>开发语言>Java > 1.初识JVM

1.初识JVM

2020年03月19日  | 移动技术网IT编程  | 我要评论

jvm的概念

  • jvm是java virtual machine的简称。意为java虚拟机。
  • jvm使用软件模拟java字节码的指令集。

规范

java语言规范

  • 语法
    if-else-else if、函数等语法
  • 词法
    行终结符、空白符、注释、标识符、关键字等
  • java内存模型
  • 类加载连接过程
  • 异常
  • ...

jvm规范

jvm主要定义二进制class文件和jvm指令集等。java语言和jvm相对独立,groovy、clojure、scala等也可以运行在jvm中。

  • class文件格式
  • 数字的内部表示和存储
    byte  -128 to 127 (-27 to 27 - 1)
  • returnaddress数据类型定义
    指向操作码的指针。不对应java数据类型,不能在运行时修改。finally实现需要
  • 定义pc、堆、栈、方法区
  • 整数、浮点数的表示与定义
  • 特殊的方法
    • <clinit>
    • <init>
  • vm指令集
    • 类型转化
      l2i
    • 出栈入栈操作
      aload astore
    • 运算
      iadd isub
    • 流程控制
      ifeq ifne
    • 函数调用
      invokevirtual invokeinterface invokespecial invokestatic
  • jvm需要对java library 提供以下支持
    • 反射 java.lang.reflect
    • classloader
    • 初始化class和interface
    • 安全相关 java.security
    • 多线程
    • 弱引用
  • jvm的编译
    • 源码到jvm指令的对应格式
    • javap
    • jvm反汇编的格式
      (index) (opcode) [ (operand1) [ (operand2)... ]] [(comment)]

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网