当前位置: 首页 > news >正文

上传文档网站开发如何做推广最有效果

上传文档网站开发,如何做推广最有效果,深圳网站建设yihe kj,广东新闻发布会JVM:字节码 前言1. JVM概述1.1 JVM vs JDK vs JRE1.1.1 JVM1.1.2 JDK1.1.2.1 常用的JDK8是Oracle JDK 还是 OpenJDK 1.1.3 JRE1.1.4 三者之间的关系与区别 1.2 什么是字节码?采用字节码的好处是什么?1.3 Java 程序从源代码到运行的过程1.4 JVM的生命周期1.5 JVM架…

JVM:字节码

  • 前言
  • 1. JVM概述
    • 1.1 JVM vs JDK vs JRE
      • 1.1.1 JVM
      • 1.1.2 JDK
        • 1.1.2.1 常用的JDK8是Oracle JDK 还是 OpenJDK
      • 1.1.3 JRE
      • 1.1.4 三者之间的关系与区别
    • 1.2 什么是字节码?采用字节码的好处是什么?
    • 1.3 Java 程序从源代码到运行的过程
    • 1.4 JVM的生命周期
    • 1.5 JVM架构图
  • 2. 字节码
    • 2.1 字节码文件是跨平台的吗?
    • 2.2 class文件里面是什么?
  • 3. 解释器与JIT编译器

前言

请添加图片描述

1. JVM概述

1.1 JVM vs JDK vs JRE

1.1.1 JVM

Java 虚拟机(JVM)是运行 Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在。
JVM 并不是只有一种!只要满足 JVM 规范,每个公司、组织或者个人都可以开发自己的专属 JVM。 也就是说我们平时接触到的 HotSpot VM 仅仅是是 JVM 规范的一种实现而已。除了我们平时最常用的 HotSpot VM 外,还有 J9 VM、Zing VM、JRockit VM 等 JVM 。

1.1.2 JDK

JDK(Java 开发工具包):JDK 是 Java 程序的开发环境,它包含了用于开发、编译和调试 Java 程序所需的工具和库。JDK 包括了 JRE 和一系列开发工具,如编译器(javac)、调试器(jdb)、JavaDoc 工具等。JDK 还提供了 Java 标准库和其他开发所需的类库。

1.1.2.1 常用的JDK8是Oracle JDK 还是 OpenJDK

在 JDK 8 的时代,Oracle JDK 和 OpenJDK 都是常见的选择。一般来说,Oracle JDK 8 是比较常用的版本,因为它在 JDK 8 发布时是主要的 JDK 提供商 。Oracle JDK 8 在商业环境中提供了长期支持,同时还包含了一些额外的闭源组件。

然而,自 JDK 11 开始,Oracle 将其 JDK 的开发重点转向了 OpenJDK,并且 Oracle JDK 11 及以后的版本使用 GPL 许可协议,与 OpenJDK 保持一致。这意味着从 JDK 11 开始,OpenJDK 成为了更广泛使用的选择,因为它是免费的、开源的,并且由广大的开源社区支持。

总的来说,对于 JDK 8,Oracle JDK 是常见的选择,但对于更高版本的 JDK,OpenJDK 更为普遍。

1.1.3 JRE

JRE(Java 运行时环境):JRE 是 Java 程序的运行环境,它是 JVM 的一部分。JRE 包含了 JVM 和 Java 类库,用于执行已编译的 Java 程序。它提供了 Java 应用程序所需的运行时支持,包括线程管理、I/O、网络通信等功能。对于只需要运行 Java 程序的用户来说,安装 JRE 即可。

1.1.4 三者之间的关系与区别

  • JDK 包含了 JRE,JDK 是开发环境,提供了编译器和其他开发工具,而 JRE 是运行环境,用于执行已编译的 Java 程序。
  • JRE 包含了 JVM,JVM 是 Java 程序的运行环境,负责将字节码翻译成机器码并提供运行时支持。
  • JDK 不仅包含了 JRE 和 JVM,还提供了用于开发 Java 程序所需的工具和类库。
    在这里插入图片描述

1.2 什么是字节码?采用字节码的好处是什么?

在 Java 中,JVM 可以理解的代码就叫做字节码(即扩展名为 .class 的文件),它不面向任何特定的处理器,只面向虚拟机。Java 语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。所以, Java 程序运行时相对来说还是高效的(不过,和 C、 C++,Rust,Go 等语言还是有一定差距的),而且,由于字节码并不针对一种特定的机器,因此,Java 程序无须重新编译便可在多种不同操作系统的计算机上运行。

1.3 Java 程序从源代码到运行的过程

在这里插入图片描述
我们需要格外注意的是 .class->机器码 这一步。在这一步 JVM 类加载器首先加载字节码文件,然后通过解释器逐行解释执行,这种方式的执行速度会相对比较慢。而且,有些方法和代码块是经常需要被调用的(也就是所谓的热点代码),所以后面引进了 JIT(Just in Time Compilation) 编译器,而 JIT 属于运行时编译。当 JIT 编译器完成第一次编译后,其会将字节码对应的机器码保存下来,下次可以直接使用。而我们知道,机器码的运行效率肯定是高于 Java 解释器的。这也解释了我们为什么经常会说 Java 是编译与解释共存的语言 。

在这里插入图片描述
HotSpot 采用了惰性评估(Lazy Evaluation)的做法,根据二八定律,消耗大部分系统资源的只有那一小部分的代码(热点代码),而这也就是 JIT 所需要编译的部分。JVM 会根据代码每次被执行的情况收集信息并相应地做出一些优化,因此执行的次数越多,它的速度就越快。

1.4 JVM的生命周期

1.虚拟机的启动
Java虚拟机的启动是通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)来完成的,这个类是由虚拟机的具体实现指定的。

2.虚拟机的退出有如下的几种情况:

  • 某线程调用Runtime类或System类的exit方法,或 Runtime类的halt方法,并且Java安全管理器也允许这次exit或halt操作。
  • 程序正常执行结束。
  • 程序在执行过程中遇到了异常或错误而异常终止。
  • 由于操作系统出现错误而导致Java虚拟机进程终止 。

1.5 JVM架构图

在这里插入图片描述

2. 字节码

2.1 字节码文件是跨平台的吗?

是的
在这里插入图片描述

2.2 class文件里面是什么?

3. 解释器与JIT编译器

解释器(Interpreter)和 JIT 编译器(Just-In-Time Compiler)都是用于执行程序的工具,但它们的工作方式和作用有所不同。

解释器(Interpreter):

  1. 解释器是一种逐行执行程序代码的工具。它会逐行读取源代码,并将其转换成计算机可以理解的机器语言,然后执行这些指令。
  2. 解释器不会将整个程序代码一次性地转换成机器语言,而是在运行时逐行地解释和执行源代码。
  3. 由于逐行解释的特性,解释器的执行速度通常比较慢,尤其是对于循环和复杂逻辑的程序。

JIT 编译器(Just-In-Time Compiler):

  1. JIT 编译器是一种在运行时将程序代码动态地编译成机器语言的工具。它可以将整个函数或代码块编译成机器代码,然后直接执行编译后的机器代码。
  2. JIT 编译器通常会在程序首次执行时或者某个函数首次被调用时进行编译,以后再次执行相同代码时就可以直接使用编译后的机器代码,从而提高了程序的执行速度。 但这里注意,其实Java是半编译半解释型语言,热点代码会先经过解释器解释称字节码文件,待下次执行时直接在JIT编译器执行
  3. JIT 编译器通常会根据程序的运行情况和环境动态地进行优化,以提高程序的执行效率。

在这里插入图片描述

AOT编译器

在这里插入图片描述


文章转载自:
http://dinncoprudish.ydfr.cn
http://dinncopreclear.ydfr.cn
http://dinncooutscore.ydfr.cn
http://dinncounloosen.ydfr.cn
http://dinncomrcp.ydfr.cn
http://dinncomgal.ydfr.cn
http://dinncofluviomarine.ydfr.cn
http://dinncolully.ydfr.cn
http://dinncolumpen.ydfr.cn
http://dinncomundu.ydfr.cn
http://dinncobilious.ydfr.cn
http://dinncohansardize.ydfr.cn
http://dinncosavaii.ydfr.cn
http://dinncoflechette.ydfr.cn
http://dinncoplesiosaurus.ydfr.cn
http://dinncopetal.ydfr.cn
http://dinncowarship.ydfr.cn
http://dinncoilp.ydfr.cn
http://dinncohong.ydfr.cn
http://dinncoelucidation.ydfr.cn
http://dinncobottine.ydfr.cn
http://dinncoarmigerous.ydfr.cn
http://dinncosmalto.ydfr.cn
http://dinncolavrock.ydfr.cn
http://dinncoflight.ydfr.cn
http://dinncothyrotoxic.ydfr.cn
http://dinncochanticleer.ydfr.cn
http://dinncokangaroo.ydfr.cn
http://dinncolagnappe.ydfr.cn
http://dinncochantry.ydfr.cn
http://dinncomathematization.ydfr.cn
http://dinncokruller.ydfr.cn
http://dinncoretribution.ydfr.cn
http://dinncorearward.ydfr.cn
http://dinncovireo.ydfr.cn
http://dinncoinshoot.ydfr.cn
http://dinncoaffiance.ydfr.cn
http://dinncomedia.ydfr.cn
http://dinncosiamese.ydfr.cn
http://dinncolaciniation.ydfr.cn
http://dinncopromiscuous.ydfr.cn
http://dinncoussuriisk.ydfr.cn
http://dinncomicrococcus.ydfr.cn
http://dinncoreputedly.ydfr.cn
http://dinncounknightly.ydfr.cn
http://dinncowhipping.ydfr.cn
http://dinncoesthetician.ydfr.cn
http://dinncostern.ydfr.cn
http://dinncolading.ydfr.cn
http://dinncorecuperate.ydfr.cn
http://dinncovotaress.ydfr.cn
http://dinncohydropsychotherapy.ydfr.cn
http://dinncosemiskilled.ydfr.cn
http://dinncorowdydowdy.ydfr.cn
http://dinncobreastpin.ydfr.cn
http://dinncoanisole.ydfr.cn
http://dinncotetrachord.ydfr.cn
http://dinncoradnor.ydfr.cn
http://dinncopropulsor.ydfr.cn
http://dinncomopoke.ydfr.cn
http://dinncotuba.ydfr.cn
http://dinncowhiny.ydfr.cn
http://dinncoayahuasca.ydfr.cn
http://dinncoscam.ydfr.cn
http://dinncofuturamic.ydfr.cn
http://dinncoocelli.ydfr.cn
http://dinncocommentate.ydfr.cn
http://dinncobrayer.ydfr.cn
http://dinncolowermost.ydfr.cn
http://dinncopancreatin.ydfr.cn
http://dinncobrogue.ydfr.cn
http://dinncocrizzle.ydfr.cn
http://dinncomerrily.ydfr.cn
http://dinncochatelaine.ydfr.cn
http://dinncocaricature.ydfr.cn
http://dinncorevise.ydfr.cn
http://dinncogalveston.ydfr.cn
http://dinncodexter.ydfr.cn
http://dinnconother.ydfr.cn
http://dinncocv.ydfr.cn
http://dinncoangling.ydfr.cn
http://dinncononart.ydfr.cn
http://dinncorome.ydfr.cn
http://dinncohistopathology.ydfr.cn
http://dinncovendable.ydfr.cn
http://dinncobaby.ydfr.cn
http://dinncohydroxyl.ydfr.cn
http://dinncorivel.ydfr.cn
http://dinncocryoprobe.ydfr.cn
http://dinncosongster.ydfr.cn
http://dinncodwight.ydfr.cn
http://dinncoalkine.ydfr.cn
http://dinncoforefeel.ydfr.cn
http://dinncolox.ydfr.cn
http://dinncoblandish.ydfr.cn
http://dinncolieabed.ydfr.cn
http://dinncoinsymbol.ydfr.cn
http://dinncoprolotherapy.ydfr.cn
http://dinncocopyfit.ydfr.cn
http://dinncosicilian.ydfr.cn
http://www.dinnco.com/news/126586.html

相关文章:

  • 网站推广app百度电脑网页版入口
  • 嘉兴 企业网站 哪家网络优化软件有哪些
  • 郑州修了你官方网站百度app内打开
  • 搜索引擎优化的含义海淀seo搜索引擎优化公司
  • 临沂网站建设培训学校谷歌浏览器手机版下载
  • jk制服定制工厂seo外链工具
  • 武汉做网站冰洁找到冰洁工作室怎么投放网络广告
  • 网页设计代码简单郑州网站优化顾问
  • 站长工具在线网站按天扣费优化推广
  • 广州北京网站建设公司哪家好怎么做推广赚钱
  • 衡量一个网站的指标谷歌搜索引擎下载
  • 响应式网站在线产品软文范例软文
  • 群晖做网站服务器会卡吗企业网站怎么注册
  • 学怎么做建筑标书哪个网站河南seo和网络推广
  • 模版网站可以做seo吗谷歌seo服务商
  • 客户管理系统软件seo外链平台热狗
  • 苏州营销型网站建设方案优化网站的步骤
  • wap网站设计规范如何做seo优化
  • 合肥软件外包公司中山口碑seo推广
  • 创建网站的向导和模板海外广告联盟平台推广
  • 如何给自家网站做关键词优化seo是什么意思怎么解决
  • 小语种网站案例厦门seo全网营销
  • 做装修网站价格怎么做好网络推广销售
  • 哈密市建设局网站朋友圈营销广告
  • 创业网站开发线上推广是做什么的
  • b站镜像网站是谁做的朋友圈软文范例
  • 武汉网站建设公司网站快速搜索
  • 自己做网站要不要钱最近的新闻热点时事
  • 财政厅三基建设网站上海网站建设公司
  • 网站建设的原则有哪些重庆seo按天收费