`

JAVAC编译JAVA源文件

阅读更多

大家都知道用javac命令可以编译java源文件,具体大家可以参考tools.jar.没有源码的可以反编译或者参照open jdk的源码,大致过程如下:

1.分析和输入到符号表(ParserAndEnter):

词法分析com.sun.tools.javac.parser.Scanner:将代码字符串转变为token序列。

语法分析com.sun.tools.javac.parser.Parser:Token序列生成抽象语法树。

输入到符号表com.sun.tools.javac.comp.Enter:类中出现的符号输入类自身的符号表中等。

 

2.注释处理(AnnotationProcessing)

用于处理用户自定义的annotation,处理后再次进入ParserAndEnter步骤。

 

3.语法分析和生成class文件(AnalyseandGenerate)

基于抽象语法树进行一序列语义分析,再完成分析后,开始生成class文件com.sun.tools.javac.jvm.Gen。

分享到:
评论

相关推荐

    Java程序设计习题(含答案解析).doc

    ( T ) 42、用Javac编译Java源文件后得到代码叫字节码。(T ) 43、数组、类和接口都是引用数据类型。( F ) 44、一个Applet编译后的类名是Test.class,运行此小程序的命令是Java Test。( F ) 45、Java语言中一个Char...

    java基础笔记

    公有的 public 的类 其名字必须跟所在java源文件的文件名完全相同 main 方法在不在公有的类中没关系 非公有的类 可以跟源文件名相同或不同 一个源文件中不要定义同名的类 ">java基础 在命令行 控制台下的dos命令:...

    JAVA初学小程序

    该命令用于将 java 源文件编译为 class 字节码文件,如: javac HelloWorld.java。 运行javac命令后,如果成功编译没有错误的话,会出现一个 HelloWorld.class 的文件。 java 后面跟着的是java文件中的类名,例如 ...

    Java快速命令编译助手(JCR)

    是我学习Java一段时间后,根据我了解的编译技巧制作的一个可以对Java源文件进行快速编译的小程序。 有了它我们就不必要:开始 输入 cmd 然后再转到当前盘,当前路径,再输入Javac 文件名.Java 也不用输入:Javac ...

    Java语言简介+JDK安装+配置+第一个程序HelloWorld编译运行

    2. 使用 JDK 提供的编译器(javac)编译源文件,生成字节码文件。 3. 使用 JDK 提供的解释器(java)运行字节码文件,输出结果。 资源的相关知识点: * Java 的特点和优势 * Java 的历史发展 * Java 的核心机制 * ...

    JAVA自学考课后答案

    (2)编译Java源文件:使用Java编译器(javac.exe)编译源文件得到字节码文件; (3)运行Java程序:Java程序分为两类----Java应用程序必须通过Java解释器(java.exe)来解释执行其字节码文件;Java小应用程序必须通过支持Java...

    命令行下的Java编译工具

    本人08年开始接触Java,初学者当然是使用黑框框编译啦,可是JDK编译器手动太麻烦,又要javac源文件,又要java主类名,还有Applet又要手动写html,包含自定义包文件又要重新输入包文件路径。 故特意编写此编译工具,只...

    自考Java语言程序设计一填空题汇总

    使用文字编辑器可以编写Java源文件,编译Java源程序使用Javac命令,生成字节码文件;使用Java命令可以运行Java应用程序。 3. Java源文件和类 Java源文件是由若干个类组成的。Java源文件的扩展名必须是.java,编译...

    Java-2实用教程(第5版)习题解答.doc

    编译 Java 源文件时,需要使用 javac 命令,编译后的字节码文件可以使用 java 命令运行。如果 JDK 的安装目录为 D:\jdk,那么需要设置 path 和 classpath 的值为 D:\jdk\bin 和 D:\jdk\jre\lib\rt.jar;.;。 在 Java...

    Ant基础教程

    Ant基础教程,包括Ant的基本配置、使用

    Java编程语言的第一个程序.docx

    javac.exe 负责编译 Java 源代码,java.exe 负责运行 Java 程序。 四、Java 程序中的注释 Java 程序中有三种类型的注释:单行注释、多行注释和 javadoc 注释。注释用于解释 Java 源代码,提高程序的可读性。 五、...

    Java编程语言的基本原理.docx

    javac.exe 是一个 Java 编译器工具/命令,可以将 Java 源文件编译生成多个.class 文件。例如, javac Java 源文件的路径。 (二)运行阶段 运行阶段的主要任务是将字节码文件装载到 JVM 中,并将其解释成二进制...

    一个稍微复杂的Java程序示例 这个程序会计算并输出用户输入的两个整数的和与乘积

    编译Java源文件。在命令行中输入以下命令: bash javac Calculator.java 这将生成一个名为Calculator.class的字节码文件。 运行编译后的程序。在命令行中输入以下命令: bash java Calculator 程序会提示你输入两...

    JAVA中的字符编码操作

    在JAVA源文件–>JAVAC编译–>Class–>Java运行–>getBytes()–>newString()–>显示的过程中,  每一步都有编码的转换过程,这个过程总是存在的,只是有的时候用默认的参数进行。  在编写JAVA源文件的时候要指定...

    java源码包-source-list-generator:VCSSL脚本用于生成用于编译多个Java:registered:源文件,程序包等的列表文件-VCSSL

    如果要编译多个Java源文件或不带构建工具或IDE的程序包,则可以在文件中描述所有源文件的路径(例如sourcelist.txt),并将其指定给javac命令,如下所示: 如果要在不使用构建工具或IDE的情况下编译多个Java源文件和...

    韩顺平JAVA从入门到精通视频教程(94讲)全部笔记整理.doc

    2. 编译源文件为类文件(.class 文件) 3. 在虚拟机上运行 三、Java 语言特点 Java 语言有四个主要特点: 1. 简单性:Java 语言简单易学 2. 面向对象:Java 语言是面向对象的编程语言 3. 跨平台性:Java 语言可以...

    [Java参考文档].JDK_API_1_6_zh_CN

    javac javacjavac )将源程序编译 )将源程序编译 成字节码 -- 字节码文件名 :源字节码文件名 :源.class .class,再利用虚拟机 ,再利用虚拟机 (解释器,即 javajava java)解释执行,运过 )解释执行,运过 程

    韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全).doc

    * Java 编译器(javac.exe) * Java 字节码文件 (.class 文件) * 由解释执行器(java.exe)将字节码文件加载到 Java 虚拟机(JVM) 2. Java 程序的执行过程: * 编译源文件 * 运行字节码文件 开发工具 1. ...

    JAVA小区物业管理系统

    利用JDK中的Java编译器——javac,可以将源文件编译成Java虚拟机(JVM)能够解析的字节码文件。 3. 运行程序 利用JDK中的Java解析器,将字节码文件转化为你的系统能够理解的指令,加以执行。 2.2.4 JDBC简介 Java...

Global site tag (gtag.js) - Google Analytics