Jython - 概述
Jython 是 Python 编程语言的 JVM 实现。 它被设计为在 Java 平台上运行。 Jython 程序可以导入和使用任何 Java 类。 与 Java 一样,Jython 程序编译为bytecode字节码。 主要优势之一是用 Python 设计的用户界面可以使用 AWT、Swing 或 SWT 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 库。