| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> 【初识Java||简介JAVA的技术架构、JDK、及其编译运行】 -> 正文阅读 |
|
[Java知识库]【初识Java||简介JAVA的技术架构、JDK、及其编译运行】 |
作者:recommend-item-box type_blog clearfix |
? ? 目录? Java的三种技术架构
一张表解释Java生态框架:(从左到右的包含关系,上下之间平行无关) ?JDK、JRE、JVMJDK(Java Development Kit) :Java开发工具包,是整个JAVA的核心,用于java程序的开发,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。 JRE(Java Runtime Environment):Java运行环境,包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器)。 光有JVM还不能成class的 执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。 (jre里有运行.class的java.exe。 JVM(Java Virtual Machine):即java虚拟机, java运行时的环境。JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。针对java用户,也就是拥有可运行的.class文件包(jar或者war)的用户。里面主要包含了jvm和java运行时基本类库(rt.jar)。 Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。 也就是说,如果我写好一个.class文件,我发给你,只要你安装了JVM,就可以在你的电脑上运行。 ? 三者的关系: JDK=JRE+开发工具 JRE=JVM+类库。
? javac命令和java命令javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节码文件,即class文件,也就是java的运行程序。 java:负责运行部分,会启动jvm,加载所需的类库,并对class文件进行执行。 图解整个过程~ ? 还应该注意的是,在编译的过程中,不是一个.java文件对应一个.class文件,而是一个类对应一个.class文件。这样我们就能保证了用到哪个类就加载哪个类,而不是全部都加载出来。 The end? 下期见~~~~~~~~ |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 22:13:26- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |