Jython - 概述

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

Jython 最初是 JPython,后来更名,它紧跟 Guido Van Rossum 创建的称为 CPython 的标准 Python 实现。Jython 于 1997 年由 Jim Hugunin 创建。 Jython 2.0 于 1999 年发布。从那时起,Jython 2.x 版本对应于等效的 CPython 版本。 2015年5月发布的Jython 2.7.0,对应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 库。