• JDK的配置及运行过程


    介绍JDK

    【面试题】JDK、JRE、JVM之间的关系?
    JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。
    JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基础类库。是使用Java语言编写程序运行的所需环境。
    JVM(Java vitual machine):Java虚拟机,运行Java代码

    在这里插入图片描述

    编译运行过程

    在这里插入图片描述

    • 先通过javac编译程序把源文件进行编译,编译后生成的.class文件是由字节
      码组成的平台无关、面向JVM的文件。最后启动java虚拟机来运行.class文件,此时JVM会将字节码转换成平台能够理解的形式来运行。
    • 注意:在运行Java程序前,必须先安装好JDK(Java Development Kit即Java开发工具包),JDK里面就包含了javac和java工具,Java程序最终是在JVM(Java虚拟机)中运行的。

    为什么要配置环境变量

    如果不使用集成开发环境,程序运行是通过命令提示符(cmd),并且要配置环境变量.
    如果使用idea等集成开发环境,可以不配置环境变量

    配置环境变量的作用

    比如运行qq
    在这里插入图片描述
    找到exe文件,双击就能运行

    也可以在cmd中让它跑起来 .

    在exe文件所在目录下输入cmd回车,就会跳出cmd界面
    在这里插入图片描述
    在这里插入图片描述
    这是通过命令行的形式,启动程序
    但一定是在这个可执行程序的目录下
    在这里插入图片描述

    设置环境变量就是告诉cmd去找到这个qq.exe

    过程如下:
    在设置中搜索环境变量
    在这里插入图片描述
    在这里插入图片描述

    一个操作系统可以有多个用户

    • 如果设置用户变量,只对那个用户起效
    • 如果设置系统变量,那不管是哪个用户都能起效

    所以推荐设置系统变量(但我这好像没权限),就用用户变量做演示了

    进入Path,我们加上qq的路径(可以上移,越上面越先被执行,效率高),确定
    在这里插入图片描述
    打开cmd,只输入qq,也能运行exe文件
    在这里插入图片描述
    这就是环境变量的意义
    所以想用cmd执行java程序,得告诉cmd java程序在哪里

    配置JDK

    1.java 的安装路径(根据个人有所不同)
    在path加上C:\Program Files\Java\jdk1.8.0_192\bin(含bin目录)

    在这里插入图片描述
    在这里插入图片描述

    2.变量名:JAVA_HOME(不是在Path中加)
    变量值:就是第一个的路径去掉bin目录
    在这里插入图片描述
    在这里插入图片描述

    3.变量名:CLASSPATH(跟第二个一样,也要新建,但可有可无,不配置它也能运行java程序)
    变量值:

     ,;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
    
    • 1

    验证

    打开cmd输入java -version可以显示版本号
    输入javac也可以验证
    如果出现不是内部命令,那都是环境变量的问题

    运行代码

    public class helloworld{
    	public static void main(String[] args){
    		System.out.println("hello!");
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在自己知道的路径下新建xxx.java文件,用记事本打开(文件主名不要有空格)
    写下代码
    在这里插入图片描述

    这是源代码,需要javac(编译器)进行编译.
    就在源文件所在目录下输入cmd回车
    在这里插入图片描述

    cmd就到当前目录下
    在这里插入图片描述
    输入javac xxx.java回车
    在这里插入图片描述
    运行成功后多出.class文件,是二进制的字节码文件

    运行的话是在cmd输入java xxx(文件不用加后缀)
    在这里插入图片描述
    屏幕上就打印出了 hello!

    ps:

    • 只有一个类被public修饰,文件名和类名是一样的
    • 一个java文件中可以有多个类
    • 类里面是函数/方法
    • 一个类会产生一个字节码文件
  • 相关阅读:
    前端面试题:
    1.Spring Cloud Eureka 简介
    Servlet
    Docker部署Zabbix
    Conmi的正确答案——米家第一个ReactNative程序开发记录
    基于FPGA的图像拼接算法实现,包括tb测试文件和MATLAB辅助验证
    Elasticsearch
    网络安全新资讯-《关键信息基础设施安全保护要求》于明年五月正式实施
    【TES720D】基于复旦微的FMQL20S400全国产化ARM核心模块
    【书籍篇】Git 学习指南(二)提交与多次提交
  • 原文地址:https://blog.csdn.net/2302_77179144/article/details/133980262