认识程序的执行:从高级语言到二进制,以java为例
Posted 安迪9468
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了认识程序的执行:从高级语言到二进制,以java为例相关的知识,希望对你有一定的参考价值。
java 高级编程语言,面向对象
*.java是源码文件
*.class是字节码文件,一种中间文件。
JDK包含的基本组件包括:
- javac – 编译器,将源程序转成字节码
- jar – 打包工具,将相关的类文件打包成一个文件
- javadoc – 文档生成器,从源码注释中提取文档
- jdb – debugger,查错工具
- java – 运行编译后的java程序(.class后缀的)
- appletviewer:小程序浏览器,一种执行html文件上的Java小程序的Java浏览器。
- Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。
- Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。
- Jconsole: Java进行系统调试和监控的工具
JVM 是java的虚拟机
JDK 是Java开发工具包(Java Development Kit)的缩写。它是一种用于构建在Java平台上发布的应用程序、applet和组件的开发环境。
JDK是一切java应用程序的基础,所有的java应用程序是构建在这个之上的。它是一组API,也可以说是一些java Class。
如:jdk包含编译器,编译器就一个文件javac.exe
java编译器:将java源文件(.java文件)编译成字节码文件(.class文件,是特殊的二进制文件,二进制字节码文件),这种字节码就是JVM的“机器语言”。javac.exe可以简单看成是Java编译器。
Java解释器:是JVM的一部分。java解释器用来解释执行java编译器编译后的程序。java.exe可以简单看成是Java解释器。
一图全解:
编译、解释、shell脚本语言(shell解释型语言)
编程语言(Programming Language)分为低级语言(Low-level Language)和高级语言(High-level Language)。机器语言(Machine Language)和汇编语言(Assembly Language)属于低级语言,直接用计算机指令编写程序。而C、C++、Java、Python等属于高级语言,用语句(Statement)编写程序,语句是计算机指令的抽象表示。
以上是关于认识程序的执行:从高级语言到二进制,以java为例的主要内容,如果未能解决你的问题,请参考以下文章