浅析Java程序的执行过程

作者: Java机械师 | 来源:发表于2019-02-13 17:18 被阅读9次

一、jdk内容概述

      当安装好jdk后(本示例jdk版本为11.0.1,不同版本,目录有细微差别,但bin目录包含的exe是一样的),打开bin目录,有两个重要的exe文件:javac.exe(编译器)

和java.exe(.class文件执行器),详细见下图

二、原理分析

      java程序执行过程分为两步,下图为流程示意图

      第一步:将java源码(.java文件)通过编译器(javac.exe)编译成JVM文件(.class文件)

      第二步:将JVM文件通过java.exe执行,输出结果

      通过如上分析,我们发现JVM至关重要,其向上屏蔽了操作系统的差异,也正因为JVM的该作用,才使java这门编程语言能够实现跨平台,

其原理大致可描述为如下:

三、例子解析

      通过两种方式来检测java程序执行过程,手写方式和编译器方式。

(一)手写java源程序

1. 用notepad++手写一个java程序,并保存为JavaRunProcess.java。

Tip:文件名尽量与类名一致

//测试java运行过程

public class JavaRunProcess {

    public static void main(String[] args){

        System.out.println("Test java Runing Process");

    }

}

2. 用javac.exe将刚保存的JavaRunProcess.java文件编译成JavaRunProcess.class文件

3. java.exe执行JavaRunProcess.class文件,输出结果

(二)通过Intellij IDEA编写java源程序

如下图,当我们编译好JavaRunProcess源程序后,点击编译,就会产生JavaRunProcess.class文件

四、一些小建议

  1. 在配置jdk环境变量时,一般需要配置三个参数:JAVA_HOME,PATH和CLASSPATH,在jdk 1.5后,可以不用配置CLASSPATH变量;

  2. 在配置jdk变量JAVA_HOME和PATH变量时,它们之间应配置为这样关系:JAVA_HOME变量存储jdk安装路径,PATH变量引用JAVA_HOME变量

  JAVA_HOME:C:\Program Files\Java\jdk-11.0.1

  PATH:%JAVA_HOME%\bin

  Tip:这样配置好处是,当在同一台电脑配置多个jdk时,方便jdk的切换(当切换jdk时,只需改变JAVA_HOME变量接口)

  3. 注意jdk版本问题

不是每个人都能成为高手,但是不努力,就算有再高的天分,也白痴一个!如果你想学习 Java 工程化、高性能及分布式、高性能、深入浅出。性能调优、Spring,MyBatis,Netty 源码分析和大数据等知识点可以来找我。

工作一到五年的程序员朋友面对目前的技术无从下手,感到很迷茫可以加群:810589193,点击链接加入群聊【Java架构学习交流群】:https://jq.qq.com/?_wv=1027&k=5deQUBl里面有阿里Java高级大牛直播讲解知识点,分享知识,课程内容都是各位老师多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

相关文章

  • 浅析Java程序的执行过程

    一、jdk内容概述 当安装好jdk后(本示例jdk版本为11.0.1,不同版本,目录有细微差别,但bin目...

  • Java的JVM机制

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 深入了解 Java 之虚拟机内存

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 深入了解 Java 之虚拟机内存

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java程序的执行过程:Java源代码文件(...

  • 深入了解 Java 之虚拟机内存

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 深入了解Java之类加载和案例分析

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 深入了解Java之虚拟机内存

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 深入了解Java之虚拟机内存

    在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文...

  • 01-运行时数据区域

    Java虚拟机在执行Java程序的过程中数据区域的划分 Java虚拟机在执行Java程序的过程中会把它所管理的内存...

  • java程序执行过程

    在安装JDK1.8后在bin目录下有两个重要的.exe文件:java.exe和javac.exe它们的作用分别是:...

网友评论

    本文标题:浅析Java程序的执行过程

    本文链接:https://www.haomeiwen.com/subject/yobdeqtx.html