'); } '); } JAVA加载与执行 | Journey to paradise

JAVA加载与执行


JAVA加载与执行

java的语言特性

  • 简单性:

    相对而言,例如java不再支持多继承,c++是支持多继承的,c++中有指针,java中屏蔽了指针的概念。

  • 面向对象:

    java是纯面向对象的,更符合人的思维模式。

  • 可移植性(跨平台):

    java程序可以做到一次编译到处运行,java程序在windows操作系统上运行,同样的程序,不做任何修改也可以在linux操作系统上运行。 而windows操作系统内核和linux操作系统的内核不同,它们执行指令的方式也不同。 显然java程序不能直接和操纵系统打交道,因为java程序只有一分,而操作系统执行的原理不同。 SUM公司让java程序运行在一台虚拟的计算机当中,这个虚拟的计算机叫做java虚拟机,简称JVM。JVM再和底层操作系统打交道,JVM屏蔽了操作系统之间的差异。不同操作系统需要的JVM不同(JVM不能直接安装,需要安装相应版本的JDK)。

  • 多线程
  • 健壮性:

    和自动垃圾回收机制有关,java语言运行过程中产生的垃圾可以被自动回收,自动垃圾回收机制简称GC机制。

  • 安全性

java的加载与执行(使用DOS命令)

      java程序的执行包括两个阶段:编译阶段和运行阶段。

编译阶段

     编译阶段主要任务是检查Java源程序(xxx.java)是否符合Java语法,符合Java语法则能生成正常的字节码文件(xxx.class), 不符合Java语法规则则无法生成字节码文件。字节码文件中不是纯粹的二进制,该文件无法在操作系统中直接执行。

编译阶段过程:
1. 程序员需要在硬盘的某个位置(位置随意)新建一个.java扩展名的文件(Java源文件),源文件中编写的是Java源代码/源程序,该源程序必须符合Java语法规则。
2. Java程序员需要使用JDK种自带的javac.exe命令进行Java程序的编译(不使用idea等其他编译器的情况下)。
javac是一个java编译器的工具,在DOS命令窗口中使用,javac的使用规则:javac java源文件的路径

     一个java源文件可以编译生成多个.class文件,字节码文件/class文件是最终要执行的文件,当class文件生成后,java源文件删除并不会影响java程序的执行。但是一般java源程序不要删除,因为class文件最终执行效果可能不是我们想要的,那么这个时候需要回头重新修改java源程序,然后将修改后的源程序重新编译生成新的class文件,再运行这个class程序生成新的效果。
     编译结束后可以将class文件拷贝到其他操作系统中运行(跨平台)。

运行阶段

     JDK安装后,除了自带一个javac.exe来编译之外,还有一个java.exe命令来运行class文件。java.exe在DOS窗口使用,使用规则:java 类名,eg:运行A.class文件用命令 :java A。

运行阶段过程:
1. 打开DOS命令窗口
2. 输入:java A
3. java.exe命令会启动JVM,JVM启动类加载器ClassLoader
4. ClassLoader会到硬盘上搜索A.class文件,找到该文件则将该字节码文件装载到JVM中
5. JVM将A.class字节码文件解释成二进制文件
6. 操作系统执行二进制和底层硬件平台进行交互。

JDK、JRE、JVM关系

JDK:Java开发工具包
JRE:Java的运行环境,java程序开发完成后只需要java运行环境就可以运行java程序
JVM:java虚拟机,java程序最终运行在JVM上的。
JDK包含JRE,JRE包含JVM。 JDK和JRE可以单独安装,JVM不可以单独安装。

JDK目录的介绍

JDK/bin:该目录下存放了很多命令,例如javac.exe、java.exe和javadoc.exe(javac.exe负责编译,java.exe负责运行,javadoc将代码中文档注释信息自动生成到帮助文档中。)


文章作者: 涂爽
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 涂爽 !
评论
 上一篇
html基础 html基础
预备知识web学习推荐网站:W3C: http://www.w3school.com.cn/MDN: https://developer.mozilla.org/zh-CN/ 网页是由网页元素组成的 , 这些元素是利用html标签描述出来,
2020-06-16
下一篇 
Python绘图turtle库命令合集 Python绘图turtle库命令合集
Python绘图turtle库命令合集 turtle库是python中用来绘制图像的函数库,turtle:乌龟,小乌龟从坐标原点(默认值)开始,服从我们输入的指令在画布(有一个以画布中心为坐
2020-03-13
  目录