首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java平台你真的理解对了吗?

面试管的问题是:你怎么看待Java平台的说法? 这是一个综合性的实力考察问题,朋友的回答很简单:Java平台的说法不对,那是因为它运行在JVM上,JVM是平台的。...相信大家都知道JVM平台整个概念,但是可能没有真的理解对,JVM为什么能够平台,今天大家伙就跟着小面的思路理解理解。...jvm平台 除了Java语言能在JVM上运行,其他还有超过百种语言都在JVM上运行,比如scala、kotlin、groovy等等。...所以三者间的关系如下:jdk > jre > jvm image.png 总结 今天小面带大家又进一步理解了JVM这一个概念,相信你对jvm又有了不同的体会,而且小面建议收藏本文....如果你是刚刚入门,读起来可能难理解,后面可以在有一定基础后再来看此文,会有不同的收获.

31430

Java基础-Java平台原理

本文链接:https://blog.csdn.net/weixin_42528266/article/details/102917392 Java平台原理 Java为什么能够流行 外部环境 互联网的爆发式发展...需要一 个平台的语言。 Java核心优势: 平台 ?...”将Java字节码文件解释为对应机器语言并执行 总结2:Java平台和C平台的区别 Java:一次编译,到处运行 C:多次编译,到处运行 在互联网情况下,平台各异,Java平台更具有优势 Java...JVM就是一个虚拟的用于执行bytecodes字节码的计算机 Java虚拟机是Java最核心技术,也是平台的基础。...Environment 是运行Java程序所必须的环境集合 JVM Java Virtual Machine 解释运行Java字节码文件,平台的核心 联系:JDK 包含JRE,JRE包含JVM。

72620
您找到你想要的搜索结果了吗?
是的
没有找到

Java语言平台原理

一、平台平台 我们这里所说的“平台”指的是操作系统,如我们常见的Windows、MacOS、Linux等。 而“平台”指的是同样的Java程序可以在所有平台上面运行,并且运行结果相同。...二、平台原理 举个例子:有三个人A,B,C,A只会说并且只听得懂a语言,B只会说并且只听得懂b语言,C只会说并且只听得懂c语言,如果A想和B、C交流,那么他们直接对话是行不通的,因为他们说的话互相都听不懂...而Java之所以能“平台”运行,是因为JVM(Java虚拟机)的存在,JVM在不同平台间就充当着“翻译”的角色。...我们只需要针对不同的平台安装不同的JVM,便可在不同的平台运行相同的代码,并且得到相同的结果。...三、注意 平台运行不是Java程序能在所有的平台上运行,关键是该平台是否能安装相应的虚拟机,也就是能不能找到对应的“翻译”; Java源程序经过编译器编译后变成字节码(.class文件,Android

46320

JAVA」初识Java平台、以及Java平台实现原理

二、Java 三大平台及其应用场景 JavaSE(Java Platform Standard Edition):Java 标准平台,所有的Java项目都需要JavaSE的支持,包括JavaEE 和JavaME...亦是如此;如JavaWeb、Android、Java桌面软件,JavaFX 等; JavaEE(Java Platform Enterprise Edition):Java企业平台,用于开发和部署可移植...,如阿里巴巴的大部分应用都是基于Java开发的,不仅如此,阿里巴巴也基于Java封装了众多的Java中间件; JavaME(Java Platform Micro Edition): Java微型平台,...也叫K-JAVA,用于开发移动设备、嵌入式设备(比如手机、PDA、电视机顶盒和打印机等,Java原本就是为了电视机顶盒而设计的),不过现在市场份额并不是很高了; 三、平台实现 Java源代码需要编译为....class字节码文件(在安卓中是.dex文件)才能被JVM执行,Java号称一次编写,到处运行,也就是可以平台运行,那他是如何实现的呢,请看下图: 四、JDK 介绍 bin: Java的可执行命令

1.1K20

JVM笔记 -- Java平台和JVM语言

语言排行版,目前Java是第二名:https://www.tiobe.com/tiobe-index/ 世界上没有最好的编程语言,需要按照具体的使用场景来说话。 Java平台怎么理解?...Java是一门平台语言,所谓平台就是,Java源文件会被编译成为字节码文件,不管是Windows,Linux还是Mac,都有其适配的JVM,也就是字节码文件可以随意在这些JVM上去运行。...JVM 语言怎么理解? JVM是语言的平台,很多语言都可以编译成为遵守规范的字节码,这些字节码都可以在Java虚拟机上运行。...而Java虚拟机中,也有编译器,比如即时编译器,此处称为后端编译器。 Java虚拟机要做到语言,目前来看应该是当下最强大的虚拟机。但是并非一开始设计要语言。 语言的平台有利于什么?...由于有了语言平台,多语言混合编程就更加方便了,通过特定领域的语言去解决特定领域的问题。

1K20

JVM笔记 -- Java平台和JVM语言

[20210116152402.png] 可以选择以下书籍,如果是初学,最好学周志明老师的深入理解Java虚拟机,虚拟机规范会直接劝退: Java虚拟机规范(Java SE 8版) 深入理解Java虚拟机...Java平台怎么理解?...Java是一门平台语言,所谓平台就是,Java源文件会被编译成为字节码文件,不管是Windows,Linux还是Mac,都有其适配的JVM,也就是字节码文件可以随意在这些JVM上去运行。...JVM 语言怎么理解? JVM是语言的平台,很多语言都可以编译成为遵守规范的字节码,这些字节码都可以在Java虚拟机上运行。...而Java虚拟机中,也有编译器,比如即时编译器,此处称为后端编译器。 Java虚拟机要做到语言,目前来看应该是当下最强大的虚拟机。但是并非一开始设计要语言。 语言的平台有利于什么?

90900

Java是如何实现平台无关性(平台)的?

开发来说,在刚刚接触Java语言的时候,就听说过Java是一门平台的语言,Java平台无关性的,这也是Java语言可以迅速崛起并风光无限的一个重要原因。...那么,想要做到平台,最重要的就是可以根据对应的硬件和操作系统生成对应的二进制指令。 而这一工作,主要由我们的Java虚拟机完成。... ps:图中的Class文件中内容为mock内容 所以,Java之所以可以做到平台,是因为Java虚拟机充当了桥梁。他扮演了运行时Java程序与其下的硬件和操作系统之间的缓冲角色。...Java语言规范 已经有了统一的Class文件,以及可以在不同平台上将Class文件翻译成对应的二进制文件的Java虚拟机,Java就可以彻底实现平台了吗?...其实并不是的,Java语言在平台方面也是做了一些努力的,这些努力被定义在Java语言规范中。 比如,Java中基本数据类型的值域和行为都是由其自己定义的。

1.6K31

Java是如何实现平台无关性(平台)的?

相信对于很多Java开发来说,在刚刚接触Java语言的时候,就听说过Java是一门平台的语言,Java平台无关性的,这也是Java语言可以迅速崛起并风光无限的一个重要原因。...那么,想要做到平台,最重要的就是可以根据对应的硬件和操作系统生成对应的二进制指令。 而这一工作,主要由我们的Java虚拟机完成。... ps:图中的Class文件中内容为mock内容 所以,Java之所以可以做到平台,是因为Java虚拟机充当了桥梁。他扮演了运行时Java程序与其下的硬件和操作系统之间的缓冲角色。...Java语言规范 已经有了统一的Class文件,以及可以在不同平台上将Class文件翻译成对应的二进制文件的Java虚拟机,Java就可以彻底实现平台了吗?...其实并不是的,Java语言在平台方面也是做了一些努力的,这些努力被定义在Java语言规范中。 比如,Java中基本数据类型的值域和行为都是由其自己定义的。

97450

Java的运行机制以及Java平台的原理

JRE(Java Runtime Environment)即java运行环境,它包含了JVM及java的核心类库。抛开JVM不谈,它主要提供一些必要的运行文件。...JVM(Java Virtual Machine)即Java虚拟机,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java的解释器就包含在JVM中。...它的主要功能是,将字节码文件class文件解释成对应平台机器码并执行。不同的操作系统因为他们的机器码不同所以他们的JVM不同。...所以他们的关系就可以用下图来表示: 2、Java程序运行机制 Java的运行主要分两步:先编译再解释执行 (1)先通过“编译器”将Java源程序(.java)编译成Java字节码文件(.class)(...字节码文件采用结构中立的中间文件格式) (2)通过不同的虚拟机(JVM)将字节码文件解释为机器语言并执行 用图来表示就是: 3、Java平台原理 因为程序都需要编译生成字节码文件(.class),而字节码文件生成后是结构中立的中间文件格式

32810

平台开源游戏

腾讯全球首款JS代码坦克 软件介绍: CodeTank是一个非常有趣的竞赛性编程游戏平台,通过几行简单的Javascript代码和CodeTank API,每个人都可以方便的构建属于自己富有智能和个性的坦克...redux + react-redux: 最流行的 react 状态管理解决方案。 styled-components: react 中 css 解决方案,CSS-IN-JS 最佳实践。...软件地址: https://github.com/zerosoul/tech-logo-memo-game Java 坦克大战 软件介绍: tankwar 是使用java开发的一个单机版的小游戏 (未使用任何游戏引擎...开源的平台游戏开发框架 软件介绍:Cocos2D-X 是全球知名的开源平台游戏引擎,易学易用,目前已经支持 iOS、Android、Windows 桌面、Mac OS X、Linux、BlackBerry...、Windows Phone 等平台

2.6K40

Rust平台编译

我们能所学到的知识点 ❝ 平台编译及其在Rust中的好处 Rust 目标三元组 Rust原生平台编译 项目初始化 从Mac到Windows环境的平台编译 如何编写特定于平台的代码 其他平台解决方案...平台编译及其在Rust中的好处 ❝平台编译是指能够在一个平台上编译源代码,生成可以在其他平台上运行的可执行文件或库文件。它的主要好处是可以显著提高代码的「可移植性」和「复用性」。...❞ 在 Rust 中,平台编译有以下主要优势: 「无需依赖虚拟机」不同于 Java 和 .NET 等需要虚拟机的语言,Rust 编译器「直接将代码编译为机器码」,因此可以直接在目标平台上运行,无需额外的运行时环境...「标准库的平台支持」Rust 的标准库就设计为平台的,它利用了一些平台的抽象层,如平台系统调用接口,从而使标准库能够在不同操作系统上运行。...需要说明的是,虽然 Rust 为平台编译提供了很好的支持,但由于不同平台的差异,仍然可能需要一些平台特定的代码。不过相比其他语言,Rust 的平台编译支持无疑更加方便和高效。 2.

11010

Compose 平台现状

Compose 能应用于平台,主要是基于 KMM 架构,KMM 的介绍可以查看官方文档《Get started with Kotlin Multiplatform Mobile[1]》,我们来看下 KMM...从 compose-jb[2] 仓库来看,目前能复用的只有 Android 和 Desktop,想支持全平台的话,任务依然很艰巨,我们来看下简单的架构图: Android 与 Desktop 使用...当我打开 README 时发现,咋被耍猴了: 开发平台应用还需要注意哪些? 既然目前可以支持 Android 和 Desktop,那么,我们在开发界面时需要注意哪些呢?...中如何实现多语言切换[8] 总结 在整个调研和使用下来,感觉 Compose 平台还有很长的路要走,google 一直在埋头发展自己的 jetpack compose,如果 jb 与 google 能双向奔赴的话...我觉得,如果有一款能直接让客户端的编程语言(kotlin、swift)直接实现端,而不是再学习一款新的语言(dart) 来实现多平台开发,那真是一件美好的事情。

3K30

flutter平台原理

不仅框架本身需要处理大量平台相关的逻辑,随着系统版本变化和API的变化,开发者可能也需要处理不同平台的差异,甚至有些特性只能在部分平台上实现,这样框架的平台特性就会大打折扣。...Flutter 从头到尾重写一套平台的UI框架,包括UI控件、渲染逻辑甚至开发语言。...渲染引擎依靠平台的Skia图形库来实现,依赖系统的只有图形绘制相关的接口,可以在最大程度上保证不同平台、不同设备的体验一致性,逻辑处理使用支持AOT的Dart语言,执行效率也比JavaScript高得多...DOM 和真实 DOM,原生 App 中的虚拟控件和平台控件)来绘制 Flutter插件 Flutter使用的Dart语言无法直接调用Android系统提供的Java接口,这时就需要使用插件来实现中转...5.平台,iOS和Android共用一套代码。 6.JIT & AOT运行模式,支持开发时的快速迭代和正式发布后最大程度发挥硬件性能。

1.8K30
领券