在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Java语言跨平台原理是什么?有哪些优势?Java程序跨平台主要是指字节码文件可以在任何计算机或者电子设备上运行。Java语言目前很流行和Java很多优点分不开而Java的最大优点是就是跨平台。Java跨平台可以使用8个字概括:一次编译到处运行。

1、Java语言跨平台性
通过Java语言编写的应用程序在不同的操作系统都能够运行,例如windows,Linux,Mac。
2、Java实现跨平台原理
java程序的跨平台主要是指字节码文件可以在任何具有JVM的计算机和电子设备上运 行,Java虚拟机中的java解释器负责将字节码文件解释成特定的机器码进行运行。
Java语言本质上是不能跨平台的,真正实现跨平台的是JVM,也就是Java虚拟机。写好的Java源文件通过Javac命令编译生成class文件(中间文件),然后JVM对class文件进行执行生成机器语言然后机器语言在平台中操作,Java在不同的平台下都有对应的不同版本的JVM,JVM可以识别字节码文件从而运行。
3、Java语言跨平台的好处
一次编译到处运行。高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时把字节码解释成具体平台上的机器指令执行。
4、Java语言特点
(1)java语言比较安全
Java取消了强大但又危险的指针。由于指针可进行移动运算,指针可随便指向一个内存区域,而不管这个区域是否可用这样做是危险的,因为原来这个内存地址可能存储着重要数据或者是其他程序运行所占用,且使用指针也容易数组越界;
(2)Java提供了自动内存管理机制,由垃圾回收器在后台自动回收;
(3)Java在字节码的传输过程中使用了公开密钥加密机制(PKC);
(4)而在运行环境提供了四级安全性保障机制:字节码校验器 -类装载器 -运行时内存布局 -文件访问限制
5、Java语言是完全面向对象
(1)Java和C++都是面向对象语言,都能够实现面向对象思想(封装,继承,多态);
(2)Java则是完全的面向对象语言,句法更清晰,规模更小更易学。在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c++的固有缺陷。
Java强制类型机制、异常处理垃圾的自动收集等是Java程序健壮性的重要保证,对指针的丢弃是Java的明智选择,Java安全检查机制使得Java更具优势。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
详解Java开发三大体系JavaSE、JavaEE、JavaME
Java编程语言是世界上使用率最多的编程语言之一,但是你真正的了解Java语言吗?今天小编主要和大家分享一下Java开发语言中的三大体系JavaSE、JavaEE、javaME。
12582
2019-06-17 17:39:42
JSP四大作用域及请求范围总结
程序员在写代码的时候,难免会遇到作用域的问题,今天我们要谈的也是JSP的四大作用域。本文主要总结了JSP四大作用域page、request、session和application和它们的请求范围。
12112
2019-08-19 17:23:19
使用集合类各种容器时必须注意的细节
Java集合类是Java将一些基本的和使用频率极高的基础类进行封装和增强后再一一个类的形式提供。集合类可以在里面保存多个对象的类,不同的集合类有不同的功能和特点。这里就和大家介绍一下再使用集合类各种容器的时候,必须注意的相关细节。
6839
2019-12-11 18:30:42
分布式版本控制Git工作原理是什么?
分布式版本控制Git适合分布式开发,强调个体;公共服务器压力和数据量不会太大;速度快灵活;任意两个开发者之间可以很容易的解决冲突;离线工作。 但学习周期相对而言比较长;不符合常规思维;代码保密性差,开发者把整个库克隆下来可以完全公开所有代码和版本信息。
8577
2020-02-20 17:10:36
Java14发布有哪些更新?
今年三月份,Java发布了最新的版本Java14。本次发布的Java14更新了大量的内容,包括了JEP364、JEP365、JEP366、JEP367、打包功能、Nul、lPointerException异常信息、File API、switch语句、NUMA、JFR、Record、Solaris和SPARC端口、CMS垃圾收集器和instanceof。下面我们一起来看看这些更新的特性吧!
8352
2020-04-03 13:00:20
