2016 - 2024

感恩一路有你

java虚拟机安卓版 java虚拟机装在哪个盘比较好?

浏览量:1121 时间:2021-03-20 05:02:56 作者:admin

java虚拟机装在哪个盘比较好?

我们知道,Java是当下最为流行的开发语言,无论是网站还是桌面可执行程序都可以用Java来开发。但Java和其它编程语言不同的是,Java应用的运行要依懒于Java虚拟机,如果Java运行宿主机上没有Java虚拟机环境,那Java程序是无法运行的。

那问题来了,Java虚拟机安装位置是否会影响Java运行速度呢?Java虚拟机装在哪个盘好一些呢?

Java虚拟机的性能影响了Java应用的性能

Java虚拟机简称JVM,它是一种虚构出来的计算机,JVM有着自己的架构(如:处理器、指令、内存区等),本质上JVM也是用相关编程语言开发的一款应用。

JVM对于Java而言意味着什么呢?

JVM为Java应用提供运行时环境,Java应用之所以能跨平台也是靠JVM来实现的。现实生活中,电脑的性能会影响运行在此电脑上的应用的性能,同理,JVM的性能也会直接影响Java应用的性能。

JVM安装位置很重要

虽然说JVM可以安装在电脑任何盘符中,但要知道电脑读盘时也是存在性能开销的,JVM如果安装在合理的位置则在一定程序上会提升JVM的运行速度。总体上说JVM安装位置选择可遵循以下规则:

1、盘符尽可能靠前(第一分区速度要高于第二分区),减少硬盘寻址开销

2、如果你的电脑是机械盘 固态盘混合的,建一般系统盘是用固态盘的,JVM也建议安装在固态盘中

3、JVM安装路径中尽可能避免有空格、中文命名的文件夹

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!

Java能不能像C语言不通过JVM虚拟机直接编译成二进制机器码,让计算机直接运行?

从语言设计的角度看是可以的,重新设计一下编译器就能实现,但从工程实践的角度看是不可行的。

其一,Java语言最大的特点就是跨平台可移植,一次开发,一次编译,多平台执行,这一特性就是靠JVM(Java虚拟机)实现的,如果改写编译器像C语言一样直接编译成了可执行程序,就失去了跨平台特性。

其二,Java语言设计之初就设计成为了一款严重依赖JRE(Java运行时环境)的语言,有部分语言设计上的缺陷必须依赖JVM来解决,比如GC(垃圾回收),我们知道,Java语言是没有内存回收能力的,因此还得靠JVM,在工程实践中,如果软件不能进行内存回收,后果将是灾难性的。

其三,Java语言是面向对象的,区别于同是面向对象的C ,Java还有一个动态特性。

它允许程序动态地装入运行过程中所需要的类,这是C 语言进行面向对象程序设计所无法实现的。在C 程序设计过程中,每当在类中增加一个实例变量或一种成员函数后,引用该类的所有子类都必须重新编译,否则将导致程序崩溃。Java从如下几方面采取措来解决这个问题。Java编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。这样,一个在存储器生成的对象不在编译过程中决定,而是延迟到运行时由解释器确定的。这样,对类中的变量和方法进行更新时就不至于影响现存的代码。解释执行字节码时,这种符号信息的查找和转换过程仅在一个新的名字出现时才进行一次,随后代码便可以全速执行。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。而这一切同样依赖JRE。

以上几点决定了Java不能像C语言一样直接编译成机器码,当然,还有一些其它因素,但我认为上面几点是最主要的。

java虚拟机安卓版 java 类 对象 javajre和jdk的区别

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。