zoukankan      html  css  js  c++  java
  • javac 小记

    javac 到底是什么?

    javac 就是一个编译器,它把 Java 源代码编译成 Java 字节码,即 JVM 能够识别的二进制形式的文件。

    javac 由什么构成?

    • 词法分析器:识别源代码中的 Java 关键字(if、else、while 等),形成规范的 Token 流;
    • 语法分析器:对 Token 流进行语法分析,检查它们形成的组合是否符合 Java 语法规范,形成抽象语法树;
    • 语义分析器:将 foreach、注解等复杂的语法转换成最简单的语法,形成注解过后的语法树;
    • 字节码生成器:将注解过后的语法树翻译成字节码;

    附赠一个小问题

    • 问:为什么源代码中即时计算的字符串(字面量 + 字面量)并不会产生多个对象?
    • 答:因为 javac 在编译期间,已经对这些字符串进行了合并操作。
  • 相关阅读:
    C#中double转int时需要注意的地方
    OracleHelper类
    POJ2570, ZOJ1967
    ZOJ3088
    POJ3259(spfa判负环)
    POJ3268
    ZOJ1092 POJ2240
    ZOJ1298 POJ1135
    SRM587 div2
    POJ1679判断最小生成树是否唯一
  • 原文地址:https://www.cnblogs.com/optor/p/7750083.html
Copyright © 2011-2022 走看看