大家好,今天小编关注到一个比较有意思的话题,就是关于java语言跨平台的吗的问题,于是小编就整理了3个相关介绍j***a语言是跨平台的吗的解答,让我们一起看看吧。

  1. JAVA是通用的软件吗?
  2. Java的3个平台有什么区别?
  3. Java、C#、NET Framework和Mono是如何跨平台的?

J***A是通用的软件吗?

J***a是一种可以撰写跨平台应用程序的面向对象的程序设计语言。 J***a 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 J***A应用程序分为以下三类: 最早的j***a应用程序是***let,可以把j***a程序放到浏览器上运行。 基于awt的swing的界面程序,C/S架构年代就是用的这种j***a应用程序。 目前最主流的J***a ee应用程序,需要依靠浏览器来运行,是一种标准的B/S架构服务程序。

java语言是跨平台的吗-java语言是跨平台的吗知乎
(图片来源网络,侵删)

J***a的3个平台有什么区别?

1、J***A是一种面向对象语言由SUN公司出品 J针对不同的使用方向规划出JSE,JEE,JME三个版本

2、 JSE 指标准版一般用于用户学习J***A语言的基础也是使用其他两个版本的基础主要用于编写C/S项目和提供标准的J***A类库,是所有基于J***a语言开发的基础,该版本主要用于开发桌面应用程序。

java语言是跨平台的吗-java语言是跨平台的吗知乎
(图片来源网络,侵删)

3、 JEE 指企业版依托互连网技术提供企业级平台应用说白了就是用来构建大型网站和B/S系统 ,作为一个企业版本,主要是给出一个开发企业级应用架构的解决方案,同时给出了在这个架构中相关组件以供开发人员使用,例如我们连接数据库所用的JDBC。

4、JME 指移动版为小型移动器械搭建使用平台主要是用来为手机编程,制作手机相关软件的 三个版本一个是做C/S项目如QQ 一个是做网站如163 一个是做手机系统如大部分手机的小游戏 ,是针对移动设备,嵌入式系统的开发。 5三个版本以JSE类库JDK为基础又各有不同侧重开发方向以适应该语言对各个领域编程的需要 。

java语言是跨平台的吗-java语言是跨平台的吗知乎
(图片来源网络,侵删)

J***a、C#、NET Framework和Mono是如何跨平台的?

首先,我们常说J***a、C#、C等语言实现跨平台,再有.NET Framework是微软开发的应用框架,只能应用在Windows操作系统。为了使C#跨平台,微软推出了.Net Core,所以也说.Net Core跨平台。mono是Xamarin公司开发的跨平台.NET运行环境。

.NET Framework

.NET Framework构建的应用是跑在Windows、Windows Phone、Windows Server 和 Microsoft Azure上的,无法跑在Linux和macOS上,它无法使C#跨平台。

Net Core

2016年二月微软推出了.Net Core,这个框架可以运行在三大主流系统上,即Linux、macOS和Windows。

简要谈谈J***a跨平台

J***a源程序先编译为与平台无关的字节码,然后由虚拟机(JVM)执行这些字节码,在将其转换为特定机器的机器码,要注意的是,针对不同的平台,有不同的JVM,也就是JVM不是平台通用的。另外,我们下载的JDK中包含了JRE,JRE包含了JVM。所以说JVM是J***a实现跨平台的核心。没有JVM就不可能实现跨平台。

下面说下C#是如何借助.Net Core和Mono实现跨平台。

要说.Net Core跨平台,先看看它都包含哪些组件。

.NET Runtime:也就是CoreCLR,即公共语言运行库,和J***a虚拟机一样也是一个运行时环境。

Framework Libraries,包括***类,文件系统处理类,XML处理类,异步Task类等。

还有SDK工具和编译器等。

.NET Runtime之所以跨平台,主要归功于CoreCLR,它为程序提供内存分配、垃圾回收、安全控制、异常处理和多线程管理等。它也同样如J***a语言一样,将源代码翻译成中间语言,然后.NET Runtime将之翻译为机器码。

Mono跨平台原理与.Net Core相似。

最后大公司为啥不爱使用.NET、而选择J***a

这个问题由来已久,好多论坛也发起类似的争论。我觉得,一个是

.NET

开源较晚,影响了其推广;再有J***a开源框架比较多,技术架构和技术选型经验也随处可见,所以用起来比较方便。加之国内大厂用的多,使之越来越受到欢迎。不过,在国外,很多公司都在用.NET,占比没有国内这样悬殊。

如有不妥欢迎指正和补充,谢谢!

到此,以上就是小编对于j***a语言是跨平台的吗的问题就介绍到这了,希望介绍关于j***a语言是跨平台的吗的3点解答对大家有用。