JAVA基础部分 JDK和JRE以及JVM
第一部分:
一、dos命令
*快捷查看电脑ip:
Win + R进入cmd;输入ipconfig/all查看IPv4:192.168.0.xxx(首选);
基本命令:
cd进入目录;d: 直接进入盘符;. 当前目录;..上级;/根目录;md 创建目录;dir查看当前目录下所有文件;
rd + 文件夹名:删除文件夹;del+文件名:删除文件;cls:清屏;type nul>*.*;这里我们在前面创建的myfolder文件夹中进行展示,分别创建带有文件名的myfile.txt文件和不带文件名的.test两个文件,:创建空文件;
二、JDK与JRE以及JVM的区别
JVM:JAVA虚拟机,具有JIT(JUST IN TIME)即时编译,即时编译技术提高了运行效率,将一些”热点”字节码编译成本地机器码,并讲结果缓存起来,在需要的时候重新调用,使JAVA运行效率大大提高;JVM就是“一台虚拟机器”用于将字节码解释成二进制的机器语言,不同操作系统OS具有不同的JVM,JVM是跨平台的核心机制,源文件经过编译后成字节码文件就可以在不同的操作系统上进行解释运行(需按照对应操作系统的JVM),实现了一次编译随处运行。JVM也定义了指令集,垃圾收集堆,结构栈,寄存器,内存区域等。
JRE:JAVA运行环境,JRE包括了JVM和类库,如果只需要运行JAVA程序,不需要安装JDK,安装JRE就可以运行。源文件经过了编译器编译成了字节码文件后,字节码文件进入JRE里进行了类装载器(装载)、字节码校验器(校验)、解释器(解释)等成二进制机器码。
JDK:JAVA开发工具包,如果需要开发JAVA项目,需要安装JDK,JDK里包括了JRE,增加了编译器和调试器用于编译和调试。
三、javac、javaw、javap的区别
Javac存在于JDK中,用于编译JAVA源文件.java的,编译成字节码文件.class;
Javaw存在JRE中,用于运行字节码文件.class的
Javap反编译,可以用于帮助开发者深入了解Java编译器的机制,
四、path与classpath的区别
classpath是模仿path出现的,path是让所有exe结尾的文件在任意目录下都可以使用,
而classpath是为了在任意位置都能够执行后缀名为class的文件
五、JAVA跨平台的原理
java跨平台是通过JVM(java 虚拟机)实现的。
六、.Java程序执行的步骤以及工作原理
JAVA源文件.java经过JAVA编译器的编译后成字节码文件,进入JRE中,经过是类装载器的装载,字节码校验器的校验,JAVA解释器的解释,或者是即时代码发生器有选择的转换成机器码执行
七、Java的语言特点和原因
1、跨平台性(可移植性)
2、安全性
3、面向对象
4、简单性
5、高性能
6、分布式
7、多线程
8、健壮性
1、Java虚拟机的体系结构
·每个JVM都有两种机制:
①类装载子系统:装载具有适合名称的类或接口
②执行引擎:负责执行包含在已装载的类或接口中的指令
·每个JVM都包含:
方法区、Java堆、Java栈、本地方法栈、指令计数器及其他隐含寄存器
2、Java代码编译和执行的整个过程
也正如前面所说,Java代码的编译和执行的整个过程大概是:开发人员编写Java代码(.java文件),然后将之编译成字节码(.class文件),再然后字节码被装入内存,一旦字节码进入虚拟机,它就会被解释器解释执行,或者是被即时代码发生器有选择的转换成机器码执行。
(1)Java代码编译是由Java源码编译器来完成,也就是Java代码到JVM字节码(.class文件)的过程。 流程图如下所示:
(2)Java字节码的执行是由JVM执行引擎来完成,流程图如下所示:
Java代码编译和执行的整个过程包含了以下三个重要的机制:
·Java源码编译机制
·类加载机制
·类执行机制
https://blog.csdn.net/ancientear/article/details/79483592
JAVA基础部分 JDK和JRE以及JVM的更多相关文章
- JAVA基础之JDK、JRE、JVM关系
什么是JRE和JDK JDK(Java Development Kit Java开发工具包) JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE.所以安装了JDK,就不 ...
- 【Java】认识 JDK,JRE,JVM
JDK,JRE,JVM 今天我们讨论下这三个Java工具 JDK 全称Java Development ToolKit(Java 开发工具包). JDK是整个JAVA的核心,其包括了Java运行环境( ...
- Java学习2 - JDK和JRE和JVM的区别_JDK的下载安装_环境变量配置
一 JDK和JRE和JVM的区别 Jdk: Java Development kit - Java 开发工具 JRE: Java Runtime Environment - java运行环境 JVM: ...
- JDK,JRE,JVM三者之间的关系和作用
1,定义: JDK: Java Develpment Kit java 开发工具 bin:最主要的是编译器(javac.exe) include:java和JVM交互用的头文件 lib:类库 JRE: ...
- Java基础笔记(一)——JDK、JRE、JVM
JDK.JRE和JVM三者的关系 Java程序执行过程 JVM(java virtual machine) 注:由于各种操作系统(windows.linux等)支持的指令集(二进制可执行代码)不同,程 ...
- Java中JDK、JRE和JVM三者之间有什么区别和联系?Java基础!
任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK ...
- Java基础知识 ——JDK,JRE和JVM
1.开发简单的Java程序过程: 名词解释: JDK:JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行 ...
- Java基础系列(1)- JDK、JRE、JVM
Java三大版本(Write Once:Run Anywhere) JavaSE:标准版 JavaME:嵌入式开发 JavaEE:E企业级开发 JDK.JRE.JVM JDK是开发工具包 JRE是编译 ...
- java环境变量以及jdk、jre、jvm
一.jdk,jre,jvm的了解:jdk全称java development kit即java开发工具包,是整个java的核心,包含了java运行环境jre.java工具包和java的基础类库: jr ...
随机推荐
- robot framework自定义python库
自定义python库的好处: robot framework填表式,将python的灵活性弄没了,但是不要担心,RF早就想到了解决办法,就是扩充自己的库. 1.在python应用程序包目录下创建一个新 ...
- Spark实战记录
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~PipelineExample winutils.exe java.lang.NullPointException~~~~~~~~~~~~~ ...
- 总结docker常用命令
docker 1docker pull 镜像 2docker ps -a 查看所有容器docker image 查看镜像 3docker rm 容器id 删除容器 docker rm 一次可以指定多个 ...
- mysql小脚本
常用脚本 1)备份数据库 #!/bin/bash#每周一全量备份数据库 #DB1mysqldump -hip eduyun -u用户 -p密码 >eduyun`date +%Y-%m-%d-%H ...
- linux 监控脚本运行时间
虽然可以使用time命令,但是有时候会有写日志之类的需求. 使用如下脚本可以计算时间: #!/bin/bash sdate=`date +%s.%N` edate=`date +%s.%N` echo ...
- callback源码分析——callbacks
uvm的callback必须是提供者有预见性的留一些方法在function前后,这样在使用的时候,进行遍历调度即可 设计者,需要从uvm_callback定义一个基类,只定义function原型,定义 ...
- rpgmakermv(8) XY_TitleMenu插件
插件作用:设置标题 /*: * @plugindesc v1.00 Display Multiple Menu in Title Screen. * @author XueYu Plugins * * ...
- Must Know Tips/Tricks in Deep Neural Networks (by Xiu-Shen Wei)
http://lamda.nju.edu.cn/weixs/project/CNNTricks/CNNTricks.html Deep Neural Networks, especially Conv ...
- hdu4670 树分治
这题说的给了一颗树 然后树上有一些整数值,分别由他给的那30个素数组成,有多少条路径的路径上的点的乘积为立方数, 把每个数分解成相应的素数模3后的值,然后压缩为一个3进制的数 然后进行树的分支 #in ...
- hdu5064 DLX可重复覆盖+二分
这题题意是 给了n个城市 在其中小于等于k个城市建立机场然后 使得最远的那个离机场的城市距离最短 二分答案 ,我们对于每次的mid 重新建图然后再来一次DLX,每个点可以覆盖的点建立一条联系就ok了 ...