Jython - 概述


Jython 是 Python 编程语言的 JVM 实现。它被设计为在Java 平台上运行。Jython 程序可以导入和使用任何 Java 类。就像 Java 一样,Jython 程序编译为字节码。主要优点之一是用 Python 设计的用户界面可以使用AWTSwingSWT 包的 GUI 元素。

Jython 最初名为 JPython,后来重命名,它严格遵循由Guido Van Rossum创建的称为CPython的标准 Python 实现。Jython 由Jim Hugunin于 1997 年创建。Jython 2.0 于 1999 年发布。从那时起,Jython 2.x 版本对应于等效的 CPython 版本。Jython 2.7.0 于 2015 年 5 月发布,对应 CPython 2.7。Jython 3.x 的开发正在进行中。

Python 和 Java 的区别

以下是 Python 和 Java 之间的区别 -

  • Python 是一种动态类型语言。因此,不需要变量的类型声明。另一方面,Java 是一种静态类型语言,这意味着变量的类型声明是强制性的并且不能更改。

  • Python 仅具有未检查异常,而 Java 则同时具有检查异常和未检查异常。

  • Python 使用缩进来确定范围,而 Java 使用匹配的花括号。

  • 由于Python是一种基于解释器的语言,因此它没有单独的编译步骤。然而,Java 程序需要编译为字节码,然后由 JVM 执行。

  • Python支持多重继承,但在Java中,多重继承是不可能的。然而它有一个接口的实现。

  • 与Java相比,Python具有更丰富的内置数据结构(列表、字典、元组,一切都是对象)。

Python 和 Jython 之间的区别

以下是 Python 和 Jython 之间的区别 -

  • Python 的参考实现称为 CPython,是用 C 语言编写的。另一方面,Jython 完全用 Java 编写,是 JVM 实现。

  • 标准 Python 可在多个平台上使用。Jython 可用于安装了 JVM 的任何平台。

  • 标准 Python 代码编译为.pyc文件,而 Jython 程序编译为.class文件。

  • Python 扩展可以用 C 语言编写。Jython 的扩展是用 Java 编写的。

  • Jython 本质上是真正的多线程。然而,Python 使用全局解释器锁(GIL) 机制来实现此目的。

  • 两种实现都有不同的垃圾收集机制。

在下一章中,我们将学习如何在 Jython 中导入 Java 库。