java开发和运行环境知识点总结

ヾ(◍°∇°◍)ノ゙参考书籍:java程序员面试宝典

1.JDK JRE JVM 三者有什么区别? 作用分别是什么?

JDK是java开发工具不仅提供了程序运行环境JRE,还提供了编译运行工具如javac(编译命令),java(运行命令)等命令 JRE是程序运行环境包含了最核心的JVM及核心类库 JVM是java虚拟机用来运行代码 编译生成的.class文件就是加载到JVM上的。

2.如何利用JDK编译和运行程序呢?

我们使用javac+文件名.java进行编译生成字节码文件(二进制文件)在通过javac+文件名运行程序

java开发和运行环境知识点总结_第1张图片

java开发和运行环境知识点总结_第2张图片

3.为什么Java代码可以实现一次编写、到处运行?(【Java工程师面试宝典】学习说明_互联网校招面试真题面经汇总_牛客网

在程序运行前,Java源代码(.java)需要经过编译器编译成字节码(.class)。在程序运行时,JVM负责将字节码翻译成特定平台下的机器码并运行,也就是说,只要在不同的平台上安装对应的JVM,就可以运行字节码文件。

同一份Java源代码在不同的平台上运行,它不需要做任何的改变,并且只需要编译一次。而编译好的字节码,是通过JVM这个中间的“桥梁”实现跨平台的,JVM是与平台相关的软件,它能将统一的字节码翻译成该平台的机器码。

  1. 编译的结果是生成字节码、不是机器码,字节码不能直接运行,必须通过JVM翻译成机器码才能运行;

  2. 跨平台的是Java程序、而不是JVM,JVM是用C/C++开发的软件,不同平台下需要安装不同版本的JVM。

用自己的话再说一遍:

java的源代码通过javac命令生成.class的字节码文件,在通过java命令运行程序,在程序运行的时候,jvm负责将字节码翻译成平台所能理解的机器码并运行。同一份源代码可以在次多个平台上使用不需要做任何的改变只需要编译一,编译好的字节码是通过jvm实现跨平台(不是jvm跨平台是java程序跨平台),它能将统一的字节码翻译成平台理解的机器码。

4.请简述java中的main方法?

public static void main (string args[]) {
}

 main方法是java程序的入口函数 ,是一个公开的,静态的,无返回值的,函数名必须为main,参数为一个字符串数组,这个args是用来接收命令行输入参数并且args参数必须与输入参数保持一一对应。

你可能感兴趣的:(java,后端)