软件设计-理论课08.pptVIP

  • 23
  • 0
  • 约9.63千字
  • 约 62页
  • 2017-08-31 发布于广东
  • 举报
解决方案2:面向对象风格 优点: 某一构件的算法与数据结构的修改不会影响其他构件 构件之间依赖性降低,提高了复用度 缺点: 不适合功能的扩展 为了增加新功能,要么修改已有的模块,要么就加入新的模块 * 传统解释器 解释器直接读取源代码并加以执行; ASP Excel JavaScript MATLAB … … 源代码 解释器 宿主系统 (OS、硬件) 解释执行 * 基于字节码的解释器 在该类解释器下,源代码首先被“编译”为高度压缩和优化的字节码,但并不是真正的机器目标代码,因而与硬件平台无关。 编译后得到的字节码然后被解释器加以解释 例如: Java、Perl、PHP、Python、… … 源代码 (.java) 编译器 字节码 (.class) 宿主系统 (OS、硬件) 编译 解释执行 解释器 * JVM中的解释器 Java的源程序不是直接交给解释器解释,而是先经过一个编译过程,把Java源程序翻译成一种特定的二进制字节码文件(Bytecode),再把这个字节码文件交给Java解释器来解释执行 javac程序将Java源代码编译为字节码 Java编译器所生成的可执行代码可以不基于任何具体的硬件平台,而是基于JVM。 C/C++要的源程序要在不同的平台上运行,必须重新进行编译。 * 实时编译 实时编译JIT中,字节码在运行时被编译为本机的目标代码 第一步是编译得到字节码 字

文档评论(0)

1亿VIP精品文档

相关文档