专栏首页cwl_JavaJava基础-Java跨平台原理

Java基础-Java跨平台原理

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/102917392

Java跨平台原理
  • Java为什么能够流行
  • 外部环境
  • 互联网的爆发式发展
  • 互联网上的电脑硬件不同,软件环境差异较大。需要一 个跨平台的语言。
  • Java核心优势:
  • 跨平台

总结1:Java运行过程

  • Java程序的运行分为两步:先编译再解释执行
  • 通过“编译器”将Java源程序编译成Java 字节码文件(.class)(字节码文件采用结构中立 的中间文件格式)
  • 通过不同的“虚拟机”将Java字节码文件解释为对应机器语言并执行

总结2:Java跨平台和C跨平台的区别

  • Java:一次编译,到处运行 C:多次编译,到处运行
  • 在互联网情况下,平台各异,Java的跨平台更具有优势
  • Java可以跨所有平台吗:要看有没有提供并安装相应的虚拟机
  • Java的运行速度没有C语言快
  • Java需要将class文件解释成机器码再执行;C执行执行机器码

总结3:字节码文件bytecode

  • class文件 二进制文件
  • 格式中立、平台无关的二进制文件
  • 是编译的产物,是解释的原料

总结4:Java虚拟机 JVM

  • JVM是Java Virtual Machine(Java虚拟机)的缩写
  • JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿 真模拟各种计算机功能来实现的。
  • JVM就是一个虚拟的用于执行bytecodes字节码的计算机
  • Java虚拟机是Java最核心技术,也是跨平台的基础。
  • Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在 Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
  • Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能 够“一次编译,到处运行”的原因

总结5:JDK、JRE、JVM的区别联系

  • JDK:
  • Java Development Kit
  • 针对Java开发员的产品
  • JRE:
  • Java Runtime Environment
  • 是运行Java程序所必须的环境集合
  • JVM
  • Java Virtual Machine
  • 解释运行Java字节码文件,跨平台的核心

联系:JDK 包含JRE,JRE包含JVM。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 速读原著-Java核心技术(一)

    1996 年 Java 第一次发布就引起了人们的极大兴趣。关注 Java 的人士不仅限于计算机出版界,还有诸如《纽约时报》《华盛顿邮报》《商业周刊》这样的主流媒...

    cwl_java
  • 速读原著-Java核心技术(关于Java的常见误解)

    cwl_java
  • Java基础-Java的特点

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java
  • Java面试笔记

    Java最重要的特点就平台独立,平台独立意味着可以在一个系统编译它然后在另一个系统使用它。

    一点儿也不潇洒
  • 面试官:JDK、JRE、JVM 三者什么关系?

    这个题目在面试题中基本没怎么出现,但在笔试题中倒是经常见到。所以还是有必要拉出来溜溜~

    田维常
  • 书单丨24岁的Java,到底有多美?

    本书源于影响了全球250万名开发工程师的《阿里巴巴Java开发手册》,作者静心沉淀,对Java规约的来龙去脉进行了全面而彻底的内容梳理。

    博文视点Broadview
  • 简述JVM基础(一):走进Java

    作为一名Android开发工程师,从用Java写的第一个HelloWorld至今差不多有三年了。一日在家不小心打开了《深入理解Java虚拟机》,就有一种非常想迅...

    open
  • java编程语言有哪些优势呢

    很多想学编程的人有一个顾虑:不知道自己适不适合。如果因为兴趣而学,可以这么说,人人都适合学编程。现在中国各地都在开展编程教育,不仅中学生,就连小学生都开始编程了...

    用户5827212
  • 【Java基础-1】从JDK配置到第一个程序

    独上高楼,忍受无法言说的孤独。望尽天涯,苦寻难以捉摸的前路。这些人,我称之为觉醒者!相对于浑浑噩噩的大多数人,他们的目光已然超脱眼前的灯红酒绿,开始投向苍茫未知...

    云深i不知处
  • Java JDK 11:现在可以使用所有新功能

    Java Development Kit(JDK)11现已普遍可用,可供生产使用,提高了工作效率,并提供了实现HTTP / 2的HTTP客户端API。

    gemron的空间

扫码关注云+社区

领取腾讯云代金券