java运行机制和java虚拟机以及语言特点

java是编译型与解释性语言的混合体。
[b]首先来解释下编译性语言和解释性语言:[/b]
编译性语是指程序执行前需要一个专门的翻译过程,将源程序翻译成能够直接运行的目标文件,一般是指机器语言,以后在执行时不需要再翻译目标文件,直接用目标文件在机器上直接运行,效率较高,现在的语言一般都是编译语言,如c、c++、vf、pascal、delphi.
解释性语言:是指程序执行时再翻译,这个翻译过程是由特定的软件叫作解释器来完成的。例如basic语言,由专门的解释器逐条翻译,每执行一句翻译一句。解释性语言没执行一次就得翻译一次,效率较低。
[b]那么为什么说java是编译性与解释性语言的混合体?[/b]
java语言源代码写好后,首先要经过编译,将.java文件转换.class字节码文件。.class文件可以直接在java虚拟机上运行(jvm),jvm顾名思义是一台虚拟的计算机,定义在操作系统上的由软件模拟的计算机,不同的操作系统不同的平台java提供有特定的jvm,.class文件可以直接在jvm上运行,而不需考虑平台的差异性,这就是java可移植性的由来。jvm将.class字节码加载到内存,然后由其内特定的解释器将其翻译成对应的平台上运行的程序。总之,java首先将.java源文件编译成.class字节码,然后,运行时由jvm读取并翻译成jvm对应的平台目标程序,.class与平台无关有jvm来适应平台。
[b]现在我们来讲讲java的特点了。[/b]
1、java是一种简洁有效容易学习的语言,它封装了c++语言中所有难以理解和复杂的操作,如头文件、指针、结构、运算符重载和虚拟基础类等。
2、面向对象,作为现代语言,怎么能偏离面向对象这一方向
3、适宜分布式计算,java具有强大的易于使用的网络编程api和联网能力,非常适合分布式计算程序。java应用程序可以向访问本地文件系统那样通过url访问远程对象。
4、多线程处理能力。
5、具有较高的安全性,java在设计时安全性设计考虑得很仔细,而且java是开源的,安全方面的bug能够及时得得到发现,并修复。
6、更加健壮、防患于未然:java在编译时对程序可进行可检查性异常进行检查,在程序为执行前就提前规避了这类错误,避免在运行时因为这类错误导致系统崩溃,起到了防患于未然的作用。
7、可移植性,java的.class文件与平台无关,由特定的jvm来适应不同的平台,能做到一处编写到处运行的特点,移植性特别好。
8、一种动态语言:因为java的解释语言特性,它是一种动态语言,可在运行的程序中加入新代码。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值