Java概述之从源码到运行

Java体系结构包括以下四个部分:1.Java语言2.Javaclass文件格式(被编译后的java类文件格式)3.JavaAPI4.Java虚拟机JVM它们之间的关系,总结一句话:使用j

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

Java概述之从源码到运行此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

Java体系结构包括以下四个部分:

1. Java语言

2. Java class文件格式(被编译后的java类文件格式)

3. Java API

4. Java虚拟机JVM

它们之间的关系,总结一句话:使用java语言调用API编写源代码,被编译成java class文件后,在JVM

中运行。运行时,JVM通过调用class文件中实现了Java API的方法来满足程序对Java API的调用。附图:

Java概述之从源码到运行

 

Java虚拟机的主要任务就是使用类装载器(包括启动类装载器和用户自定义类装载器)装在class文件,

并交由执行引擎执行其字节码。

类装载器装载两类class文件,对Java API class文件,只有在执行时使用到才会被装载。执行引擎的实

现:

1. 一次性解释字节码:节省内存,但执行效率慢。

2. 即时编译器(Just-In-Time Compiler):更耗内存,但执行效率较快。字节码第一次执行的时候被编译成本地机器代码,被缓存,后面可重用。

3. 自适应优化器:JVM监视并记录使用频繁的代码段,编译成本地代码,其余继续保留为字节码,有JVM解释。

4. 硬件芯片:用本地方法执行字节码。执行引擎内嵌在芯片中。

 

Java class文件:平台无关、网络移动性。

平台无关性:Java class文件中的字节顺序始终是高位在前。

网络移动性:设计紧凑,可快速网络传送;可在需要时才下载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120771.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Anaconda 查看、创建、管理和使用python环境

    Anaconda 查看、创建、管理和使用python环境由于不同的项目需要用不同的python版本,于是使用Anaconda来进行版本管理,现记录一下经验:在官网下载并安装好Anaconda以后(非常简单,此处不赘述):1.查看Python环境condainfo–env可以看到所有python环境,前面有个‘*’的代表当前环境:2.创建Python环境condacreate–namepython35python=3.5代表创建一个…

  • 如何将word转为html_word转html工具

    如何将word转为html_word转html工具推荐可以试用FreeSpire.DocforJava免费控件哦,它支持将htmlstring和htmlfile转word,代码操作简单,转换效果也很好。Htmlfile转wordimportcom.spire.doc.*;importcom.spire.doc.documents.XHTMLValidationType;publicclasshtmlFileToWord{pu…

    2022年10月12日
  • SSM-Mybatis(4)「建议收藏」

    SSM-Mybatis(4)「建议收藏」缓存什么是缓存[Cache]存在内存中的临时数据将用户经常查询的数据放在缓存(内存)中,用户去查询数据的时候就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。为什么使用缓存减少和数据库的数据交换次数,较少系统开销,提高系统效率什么样的数据库能使用缓存经常查询并且不经常改变的数据Mybatis缓存MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。默认情况下,只启用了本地的会话缓存,它仅

  • 我的世界虚拟人生下载_我的世界虚拟人生手机版

    我的世界虚拟人生下载_我的世界虚拟人生手机版以下就是小编我为大家准备的一些资料,希望对大家有所帮助,我的世界虚拟人生mod可以让游戏中的村庄和村民变得像电脑游戏模拟人生那样,玩家可以在村庄里进行各种与现实生活类似的活动,并且还可以与村民进行更为复杂的互动,比如结婚生子、聊天交易等等。并且村民的外观也会变得更加生动,不再是原来的发出怪声的大鼻子村民了。虚拟人生mod玩法介绍:1、村民互动互动的选项有很多,但是不一定每个都成功。聊天、开玩笑、给…

  • wing是什么_124个叶结点的完全二叉树

    wing是什么_124个叶结点的完全二叉树设一个 n 个节点的二叉树 tree 的中序遍历为(1,2,3,…,n),其中数字 1,2,3,…,n 为节点编号。每个节点都有一个分数(均为正整数),记第 i 个节点的分数为 di,tree 及它的每个子树都有一个加分,任一棵子树 subtree(也包含 tree 本身)的加分计算方法如下:subtree的左子树的加分 × subtree的右子树的加分 + subtree的根的分数若某个子树为空,规定其加分为 1。叶子的加分就是叶节点本身的分数,不考虑它的空子树。试求一棵符合中序遍历为(1,2,

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号