第一部分:

一、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的更多相关文章

  1. JAVA基础之JDK、JRE、JVM关系

    什么是JRE和JDK JDK(Java Development Kit Java开发工具包) JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE.所以安装了JDK,就不 ...

  2. 【Java】认识 JDK,JRE,JVM

    JDK,JRE,JVM 今天我们讨论下这三个Java工具 JDK 全称Java Development ToolKit(Java 开发工具包). JDK是整个JAVA的核心,其包括了Java运行环境( ...

  3. Java学习2 - JDK和JRE和JVM的区别_JDK的下载安装_环境变量配置

    一 JDK和JRE和JVM的区别 Jdk: Java Development kit - Java 开发工具 JRE: Java Runtime Environment - java运行环境 JVM: ...

  4. JDK,JRE,JVM三者之间的关系和作用

    1,定义: JDK: Java Develpment Kit java 开发工具 bin:最主要的是编译器(javac.exe) include:java和JVM交互用的头文件 lib:类库 JRE: ...

  5. Java基础笔记(一)——JDK、JRE、JVM

    JDK.JRE和JVM三者的关系 Java程序执行过程 JVM(java virtual machine) 注:由于各种操作系统(windows.linux等)支持的指令集(二进制可执行代码)不同,程 ...

  6. Java中JDK、JRE和JVM三者之间有什么区别和联系?Java基础!

    任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK ...

  7. Java基础知识 ——JDK,JRE和JVM

    1.开发简单的Java程序过程: 名词解释: JDK:JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行 ...

  8. Java基础系列(1)- JDK、JRE、JVM

    Java三大版本(Write Once:Run Anywhere) JavaSE:标准版 JavaME:嵌入式开发 JavaEE:E企业级开发 JDK.JRE.JVM JDK是开发工具包 JRE是编译 ...

  9. java环境变量以及jdk、jre、jvm

    一.jdk,jre,jvm的了解:jdk全称java development kit即java开发工具包,是整个java的核心,包含了java运行环境jre.java工具包和java的基础类库: jr ...

随机推荐

  1. jenkins 添加 证书凭证Credentials

    jenkins 添加 证书凭证Credentials 大家都知道jenkins在拉取git项目代码的时候,如果没有配置 “证书凭证Credentials” 或者配置的不对, 就会出现红色报错,最终导致 ...

  2. PHP socket通信之UDP

    服务端: //服务器信息 $server = 'udp://127.0.0.1:9998'; //消息结束符号 $msg_eof = "\n"; $socket = stream_ ...

  3. Linux.超级管理员root-密码破解

    Linux.超级管理员root-密码破解 环境: 我是在虚拟机中安装的Linux,然后进行破解的.实体机,应该也是可以的,但我没有尝试过.如果你有实体机,试试吧... 又不要钱~ 在系统启动的时候,会 ...

  4. react-demo

    实现博客动态的评论.动态的点赞.评论的删除. 百度云链接:https://pan.baidu.com/s/199l3iu0qhM6qSe9CBnHFzw 提取码:n4w6

  5. Nginx常用功能

    3.Nginx常用功能 3.1 反向代理服务器 3.1.1.demo2 a.我在tomcat下部署了一个javaweb项目,tomcat安装的服务器IP为:192.168.37.136,部署的项目在t ...

  6. ModelSim仿真教程

    本文章详细介绍了怎样用ModelSim仿真Verilog,虽然只是很简单的一个二分频器的例子,但却正式小白入门所需要的. 本教程以ModelSim SE 10.4为例 1. 新建工程 file-> ...

  7. CALL与retn

    一.CALL 例如: 004013D9      CALL 00401C4C     //ESP = 0060F9C8 004013DE 相当于 sub esp,0x4; //ESP = 0060F9 ...

  8. sitecore系列教程之Sitecore个性化-配置文件,模式和角色

    这是利用Sitecore规则引擎实现数字化转换的三部分系列的第二部分.阅读上一篇文章,通过为您的个性化体验定义内容策略来设置基础.   Sitecore有一个非常强大的规则引擎,可以帮助推动个性化的用 ...

  9. codeforces 980C Posterized

    题意: 255个像素格子,可以把这个255个分组,每组的大小不能超过k. 给出n个像素,要求每个像素用这组的key代表,并且表示出来的字典序要最小. 思路: 感谢js教本智障. 很自然的会想到贪心,也 ...

  10. OpenCV学习笔记(一) - 边界填充、Rect函数

    边界填充: c++实现,测试在mac pro里,输入720p时间0.4ms: cv::copyMakeBorder(image, dst, , , , , cv::BORDER_REPLICATE); ...