解释型语言

JavaWeb(一):Java技术概览

試著忘記壹切 提交于 2019-12-06 07:03:52
一、Java技术体系 在早期,Java被称为Java开发工具包或JDK,是一门与平台(由一组 必需的API组成)紧密耦合的语言。 从1998年底的1.2版本开始,Java技术栈被分割为下面关键部分: Java是一门包含了严格和强类型语法的语言。 Java 2平台标准版本,被称为J2SE,指的是平台以及java.lang和java.io包中包含的类。它是构建Java应用程序的基础。 Java虚拟机或JVM是一个可运行编译后Java代码的软件虚拟机。因为被编译过的Java代码只是字节码,JVM将在运行代码之前,把字节码编译成机器码。JVM还负责管理内存,从而实现了应用程序代码的简化。 Java开发工具包或JDK。它包括了Java语言编译器、文档生成器、与本地代码协作的工具和用于调试平台类的Java源代码。 Java运行时环境或JRE曾经并且现在也仍是终端用户用于运行编译后Java应用程序的软件。它包含了JVM但不含任何JDK中的开发工具。而JDK包含了一个JRE(即jdk既包含开发工具又包含JRE)。 上述5个组件曾经都只是 规范 ,而不是实现。任何公司都可以通过规范实现Java技术栈,比如IBM有自己的JDK。开源社区则形成了OpenJDK项目,该项目提供Java栈的开源实现。 我们在Oracle网站下载的JDK,实际也是一种实现,sun公司最初就提供了Java、J2SE、JVM

编译型语言和解释型语言的简单介绍

不打扰是莪最后的温柔 提交于 2019-12-04 01:24:26
一、编译型语言   编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性“翻译”成可被该平台硬件执行的机器码(包括机器指令和操作数),并包装成该平台所能识别的可执行性程序的格式,这个转换过程称为“编译”。编译生成的可执行性程序可以脱离开发环境,在特定的平台上独立运行。   因为编译型语言是一次性低编译成机器码,所以可以脱离开发环境独立运行,而且通过运行效率较高;但因为编译型语言的程序被编译成特定平台上的机器码,因为编译生成的可执行性程序通常无法移植到其他平台上运行;如果需要移植,则必须将源代码复制到特定平台上,针对特定平台进行修改,至少也需要采用特定平台上的编译器重新编译。 二、解释型语言    解释性语言是指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行的语言。解释性语言通常不会进行整体性的编译和链接处理,解释型语言相当于把编译型语言中的编译和解释过程混合到一起同时完成。   可以认为:每次执行解释型语言的程序都需要进行一次编译,因此解释型语言的程序运行效率通常较低,而且不能脱离解释器独立运行。但解释型语言有一个优势:跨平台比较容易,只需提供特定平台的解释器即可,每个特定平台上的解释器负责将源程序解释成特定平台的机器指令即可。解释型语言可以方便地实现源程序级的移植,但这是以牺牲程序执行效率为代价的。    来源: https://www

PEPE规范及解释型语言

天涯浪子 提交于 2019-12-03 07:54:21
今日作业1 1.python解释器的种类及特点 CPython ,由C语言开发的,使用最广的解释器 IPython ,基于cpython之上的一个交互式计时器,交互方式增强,功能和CPython一样 pypy ,目标是执行效率,对python代码进行动态编译,提高执行效率 JPython ,运行在java上的解释器,直接把python代码编译成java字节码执行 IronPython ,运行在微软.NET平台上的解释器,把python编译成.NET的字节码 2.PEP8规范 缩进,4个空格缩进 每行最大长度79,换行可以使用反斜杠 最好使用圆括号。换行点要在操作符的后边敲回车。 不要在一句import中多个库,比如import os, sys不推荐。 操作符左右各加一个空格 逗号、冒号、分号前不要加空格 总体原则,错误的注释不如没有注释。所以当一段代码发生变化时,第一件事就是要修改注释! 模块命名尽量短小,使用全部小写的方式,可以使用下划线 3.简述解释型语言和编译型语言 编译型语言, (先编译打包,后执行) 使用专门的编译器,针对特定的平台,将高级语言源代码一次性的编译成可被该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式 一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高 解释型语言,(依赖解释器, 提供相应的解释器,就可以运行源代码 )

解释性和编程性语言

痴心易碎 提交于 2019-12-03 07:30:50
首先,我们编程都是用的高级语言(写汇编和机器语言的大牛们除外),计算机不能直接理解高级语言,只能理解和运行机器语言,所以必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。 说到翻译,其实翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。 用编译型语言写的程序执行之前,需要一个专门的编译过程,通过编译系统(不仅仅只是通过编译器,编译器只是编译系统的一部分)把高级语言翻译成机器语言(具体翻译过程可以参看下图),把源高级程序编译成为机器语言文件,比如windows下的exe文件。以后就可以直接运行而不需要编译了,因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。 解释则不同,解释型语言编写的程序不需要编译。解释型语言在运行的时候才翻译,比如VB语言,在执行的时候,专门有一个解释器能够将VB语言翻译成机器语言,每个语句都是执行的时候才翻译。这样解释型语言每执行一次就要翻译一次,效率比较低。 一,编译型语言: 编译生成的可执行程序可以以脱离开发环境,在特定的平台上独立运行。 因为编译型语言是一次性的编译成机器码,所以可以脱离开发环境独立运行,而且通常运行效率较高;但因为编译性语言的程序被编译成特定平台上的机器码,因此编译生成的可执行程序通常无法移植到其他平台上运行;如果需要移植,则必须将源代码复制到特定的平台上,针对特定的平台进行修改

编译型语言与解释型语言的区别及各自的优缺点

匿名 (未验证) 提交于 2019-12-03 00:39:02
计算机编程语言种类非常多,根据与计算机硬件贴近程度和抽象程度大致可分为3类,自顶向下分别是 : 高级语言(抽象层次更高的便于记忆和表示的英文代码) | 汇编语言(抽象层次较高的对应机器硬件的cpu指令集,英文缩的助记 符号代码) | 机器语言(抽像层次最低的由0、1序列所表示的机器码) 众所周知,计算机底层只能识别(并执行)0、1序列的机器码,这表示所有的高级编程语言所编写的代码,最终都要以某种方式被转换成能被计算机识别的0、1序列机器码,方可被计算机接受并执行。这种将代码转换为机器码的方式可分为编译型和解释型这2类: 概念: 编译型语言 :把做好的源程序全部编译成二进制代码的可运行程序。然后,可直接运行这个程序。 解释型语言 :把做好的源程序翻译一句,然后执行一句,直至结束! 编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率 较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(* .OBJ)才能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型的。编译程序将源程序翻译成目标程序后保存在另一个文件中,该目标程序可脱离编译程序直接在计算机上多次运行。大多数软件产品都是以目标程序形式发行给用户的,不仅便于直接运行,同时又使他人难于盗用其中的技术C、C

Java是解释型还是编译型语言?

匿名 (未验证) 提交于 2019-12-02 21:52:03
解释型语言和编译型语言的区别 经常,在学习计算机语言的过程中,大家都会聊到一个问题,c语言、java、python等等他们的运行速率快慢,从而凸显出这个语言又多厉害。而这个执行速度其实和我们“解释性语言“及“v”相关联的。 解释型语言:编写好程序以后,可以直接在 解释器 上运行的,我们知道程序是人们定义的一些列高级语法,这个直接交给操作系统肯定是不认识的。所以需要解释器把程序段转化成机器码,在由操作系统执行。这里我们就发现了解释性语言的一大特点:就是: 程序是边运行边进行机器码转化(转化完后cpu执) 。 编译型语言:编写好程序以后,首先需要编译器进行编译,统一转化成机器码,然后这个编译完的文件,可以放在操作系统直接执行。 【这就好像我们吃一袋瓜子,解释性语言是剥一颗吃一颗,直到吃完;而编译性语言是先把一袋瓜子全部剥完,剥出肉,然后一口吃进去。你说这两种模式对于最后吃的人来说,哪种会比较快,结果不言而知吧!】 这里的一袋瓜子其实就是一段程序,吃瓜子的人就是操作系统。 python是解释型还是编译型语言? python是解释型语言,编写好的python代码段,由python解释器进行执行! 们从 Python官方网站 下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行 python

01-Java语言概述与开发环境 最适合入门的Java教程

ε祈祈猫儿з 提交于 2019-12-01 06:51:29
Java 程序运行机制 编译型语言: 使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性"翻 译"成可被该平台硬件执行的机器码(包括机器指令和操作数),并包装成该平台所能识别的可执行性 程序的格式,这个转换过程称为编译 CCompile)。 编译生成的可执行性程序可以脱离开发环境,在特定 的平台上独立运行。例如: C、 C++、 Objective-C、 Swi位、 Kotlin 等高级语言都属于编译型语言。 解释型语言: 指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行的语言。解释型语言通常不会进行整体性的编译和链接处理,解释型语言相当于把编译型语言中的编译和解释过程混 合到一起同时完成。 例如: JavaScript、 Ruby、 Python 来源: https://www.cnblogs.com/ningbj/p/11664894.html

Java是解释型还是编译型语言?

蓝咒 提交于 2019-11-29 16:01:16
解释型语言和编译型语言的区别 经常,在学习计算机语言的过程中,大家都会聊到一个问题,c语言、java、python等等他们的运行速率快慢,从而凸显出这个语言又多厉害。而这个执行速度其实和我们“解释性语言“及“v”相关联的。 解释型语言:编写好程序以后,可以直接在 解释器 上运行的,我们知道程序是人们定义的一些列高级语法,这个直接交给操作系统肯定是不认识的。所以需要解释器把程序段转化成机器码,在由操作系统执行。这里我们就发现了解释性语言的一大特点:就是: 程序是边运行边进行机器码转化(转化完后cpu执) 。 编译型语言:编写好程序以后,首先需要编译器进行编译,统一转化成机器码,然后这个编译完的文件,可以放在操作系统直接执行。 【这就好像我们吃一袋瓜子,解释性语言是剥一颗吃一颗,直到吃完;而编译性语言是先把一袋瓜子全部剥完,剥出肉,然后一口吃进去。你说这两种模式对于最后吃的人来说,哪种会比较快,结果不言而知吧!】 这里的一袋瓜子其实就是一段程序,吃瓜子的人就是操作系统。 python是解释型还是编译型语言? python是解释型语言,编写好的python代码段,由python解释器进行执行! 们从 Python官方网站 下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行 python

Python 解释型语言

孤人 提交于 2019-11-27 09:46:18
参考: http://blog.csdn.net/tjxy_20081/article/details/8937687 何为字节编译?解释器与编译器的区别?Java的字节码和Python的字节码有什么区别? 结论:不能把语言纯粹地分成解释型和编译型这两种。用Java来举例,Java首先是通过编译器编译成字节码文件,然后在运行时通过解释器给解释成机器文件。所以我们说Java是一种先编译后解释的语言。Python在运行时会生成.pyc的二进制临时文件,看起来很像是预编译的结果,也不是纯的解释型语言。Python解释器只把我们可能重用到的模块持久化成.pyc文件。 编译型:编译链接生成机器码,直接在内存中执行 解释型:简单理解,每一行单独执行与执行整个脚本效果是一样的 Python是一个解释型的语言。但是为了效率上的考虑,Python也提供了编译的方法。编译之后是bytecode的形式。Python也提供了和Java 类似的VM来执行bytecode。不同的是,因为Python是一个解释 型的语言,所以编译(compile)不是一个强制的操作。事实上,编译是一个自动的过程。多数情况下,你甚至不会在意他的存在。编译 成bytecode可以节省加载模块的时间,从而提高效率。 除了效率原因,bytecode也增加了反向工程的难度,在某种程度上保 护你的代码。当然,反编译仍然是可以的

php解释型语言,那么何为解释?

你。 提交于 2019-11-27 09:40:58
计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。 翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高,但也不能一概而论,部分 解释型语言 的解释器通过在运行时动态优化代码,甚至能够使解释型语言的性能超过编译型语言。 解释则不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性 basic语言 ,专门有一个解释器能够直接执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。解释是一句一句的翻译。 来源: CSDN 作者: JFrameSea 链接: https://blog.csdn.net/qq_14855277/article/details/52208844