Java面试题----Java概述

一、JVM、JRE、JDK的关系

JVM:Java Virtual Machine是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台有自己的虚拟机,因此Java语言可以实现跨平台。

JRE:Java Runtime Environment包括Java虚拟机和Java程序所需的核心类库等;核心类库主要是java.lang包:包含了运行Java程序必不可少的系统类,如基本数据类型、基本数学函数、字符串处理、线程、异常处理类等

如果想要运行一个开发好的Java程序,计算机中只需安装JRE即可

JDK:Java Development Kit是提供给开发人员使用的,其中包含了Java的开发工具,也包括了JRE,所以安装了JDK,就无需在单独安装JRE了,其中的开发工具有:编译工具(javac.exe),打包工具(jar.exe)等

关系图:

二、什么是跨平台性?原理是什么

所谓跨平台性,是指java语言编写的程序,一次编译后,可以在多个系统平台上运行。

原理:Java程序是通过Java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序

三、Java语言的特点

 简单易学、面向对象(封装、继承、多态)、平台无关性、支持网络编程且方便(java语言诞生本身就是为简化网络编程设计的)、支持多线程(多线程机制使应用程序在同一时间并行执行多项任务)、健壮性(Java语言的强类型机制、异常处理、垃圾的自动收集)、安全性

四、Java中的编译器和解释器

 Java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(即扩展为.class的文件),它不面向任何特定的处理器,只面向虚拟机。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行,这就是上面提到的Java的特点的编译与解释并存的解释。

过程:

Java源代码  ---->  编译器  ---->  jvm可执行的Java字节码(即虚拟指令)  ---->  jvm  ---->  jvm中解释器  ----->  机器可执行的二进制机器码  ---->  程序运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值