Java到底是编译型语言还是解释型语言?(java是编译型语言吗)

  本篇文章为你整理了Java到底是编译型语言还是解释型语言?(java是编译型语言吗)的详细内容,包含有java属于编译型还是解释型 java是编译型语言吗 java编译型语言和解释型语言 java是解释器还是编译器 Java到底是编译型语言还是解释型语言?,希望能帮助你了解 Java到底是编译型语言还是解释型语言?。

  Java编程语言是由Sun微系统公司在20世纪90年代早期开发的。尽管Java主要用于基于internet的应用程序,但它是一种简单、高效、通用的语言。Java最初是为运行在多个平台上的嵌入式网络应用程序而设计的。它是一种可移植的、面向对象的解释性语言。

  Java是非常可移植的。相同的Java应用程序可以在任何计算机上以相同的方式运行,而不考虑硬件特性或操作系统,只要它有Java解释器。除了可移植性之外,Java的另一个关键优势是它的一组安全特性,这些特性不仅可以保护运行Java程序的PC不受错误代码引起的问题的影响,还可以保护运行Java程序的PC不受恶意程序(如病毒)的影响。您可以安全地运行从Internet下载的Java applet,因为Java的安全特性可以防止这些类型的applet访问PC的硬盘驱动器或网络连接。applet通常是嵌入在HTML页面中的小型Java程序。

  Java既可以被认为是编译型语言,也可以被认为是解释型语言,因为它的源代码首先被编译成二进制字节码。这个字节码运行在Java虚拟机(JVM)上,JVM通常是一个基于软件的解释器。使用编译的字节码可以使解释器(虚拟机)变得更小、更高效(几乎和CPU运行本机编译代码一样快)。此外,这个字节码为Java提供了可移植性:无论计算机硬件或软件配置如何,它都可以在任何正确实现的JVM上运行。大多数Web浏览器(如Microsoft Internet Explorer或Netscape Communicator)包含运行Java小程序的JVM。

  与c++(另一种面向对象的语言)相比,Java代码运行稍慢(因为JVM),但它更可移植,具有更好的安全特性。虚拟机在不受信任的Java程序和运行该软件的PC之间提供隔离。Java的语法类似于c++,但是语言有很大的不同。例如,Java不允许程序员实现运算符重载,而c++允许。此外,Java是一种动态语言,您可以在程序运行时安全地修改它,而c++不允许这样做。这对于无法承受任何停机时间的网络应用程序尤其重要。此外,所有基本Java数据类型都是预定义的,不依赖于平台,而一些数据类型可以随着C或c++中使用的平台而改变(例如int类型)。

  Java程序比c++程序更具有高度的结构化。Java中的所有函数(或Java方法)和可执行语句必须驻留在类中,而c++允许函数定义和代码行存在于类之外(就像C风格的程序一样)。在Java中,全局数据和方法不能驻留在类之外,而c++允许这样做。这些限制虽然有时很麻烦,但有助于维护Java程序的完整性和安全性,并迫使它们完全面向对象。

  Java的另一个关键特性是它是一个开放标准,其源代码是公开的。Sun Microsystems控制着Java语言及其相关产品,但Sun的自由许可政策促成了互联网社区将Java作为标准。您可以从Sun的Java Web站点免费下载开发和运行Java小程序和应用程序所需的所有工具

  
在本例中,类AverageProgram(即程序)只包含一个方法(函数)main()。注意,大部分语法与C或c++相同,包括注释分隔符:您可以在Java中使用C(/* */)或c++(//)风格的分隔符。甚至while()语句也像在C/ c++中一样工作。输出到屏幕是使用System.out.println()完成的,其中println()是标准Java System的调用方法。对象。Java也有一个系统。在对象中,用于从键盘读取,但必须经过处理才能有用。在本例中,假设ConsoleIn是先前定义的类(使用System.in),其中包含用于读取整数值的Readlnt()方法。

  与我们调查过的其他编程语言一样,这只是对Java的简要介绍。要了解更多细节,请参考参考书目中的Java文本或访问Sun Microsystems的Java网站(http://java.sun.com)。接下来我们将讨论如何编写在微软Windows操作系统下运行的程序。

  

  
(1)java语言的编译-- 解释--- 执行过程

  

  

  

  

  

  

  

  

  (2)java的虚拟机

  

  

  

  

  

  

  

  定义:

  编译型语言:把做好的源程序全部编译成二进制代码的可运行程序。然后,可直接运行这个程序。

  解释型语言:把做好的源程序翻译一句,然后执行一句,直至结束!

  区别:

  编译型语言,执行速度快、效率高;依靠编译器、跨平台性差些。

  解释型语言,执行速度慢、效率低;依靠解释器、跨平台性好。

  个人认为,java更偏向解释型的语言,因为虽然java也需要编译,编译成.class文件,但是并不是机器可以识别的语言,而是字节码,最终还是需要 jvm的解释,才能在各个平台执行,这同时也是java跨平台的原因。所以可是说java即是编译型的,也是解释型,但是假如非要归类的话,从概念上的定义,恐怕java应该归到解释型的语言中。

  附:

  编译型的语言包括:C、C++、Delphi、Pascal、Fortran

  解释型的语言包括:Java、Basic、javascript

  以上就是Java到底是编译型语言还是解释型语言?(java是编译型语言吗)的详细内容,想要了解更多 Java到底是编译型语言还是解释型语言?的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: