Jython-overview

提供:Dev Guides
移動先:案内検索

Jython-概要

Jythonは、Pythonプログラミング言語のJVM実装です。 Javaプラットフォームで実行するように設計されています。 Jythonプログラムは、任意のJavaクラスをインポートして使用できます。 Javaと同様に、Jythonプログラムは bytecode にコンパイルされます。 主な利点の1つは、Pythonで設計されたユーザーインターフェイスが AWTSwing 、または* SWTパッケージ*のGUI要素を使用できることです。

JPythonとして開始され、後に名前が変更されたJythonは、 Guido Van Rossum によって作成された CPython と呼ばれる標準Python実装に厳密に従います。 Jythonは、 Jim Hugunin によって1997年に作成されました。 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の違いは次のとおりです-

  • CPythonと呼ばれるPythonのリファレンス実装は、C言語で書かれています。 一方、Jythonは完全にJavaで記述されており、JVM実装です。
  • 標準のPythonは複数のプラットフォームで利用できます。 Jythonは、JVMがインストールされているすべてのプラットフォームで使用できます。
  • 標準のPythonコードは .pyc ファイルにコンパイルされ、Jythonプログラムは .class ファイルにコンパイルされます。
  • Python拡張機能はC言語で作成できます。 Jythonの拡張機能はJavaで記述されています。
  • Jythonは本質的に本当にマルチスレッドです。 ただし、Pythonはこの目的のために Global Interpreter Lock (GIL)メカニズムを使用します。
  • 両方の実装には、異なるガベージコレクションメカニズムがあります。

次の章では、JythonでJavaライブラリをインポートする方法を学びます。