Google PlayストアでUnionpediaアプリを復元するために作業中です
🌟ナビゲーションを改善するためにデザインを簡素化しました!
Instagram Facebook X LinkedIn

GNU Compiler for JavaとJava Native Interface

ショートカット: 違い類似点ジャカード類似性係数参考文献

GNU Compiler for JavaとJava Native Interfaceの違い

GNU Compiler for Java vs. Java Native Interface

GNU Compiler for Java(グニュー・コンパイラ・フォー・ジャバ、GCJ、ジーシージェー)はJavaのためのフリーなコンパイラで、GCCの一部である。Javaソースコードをコンパイルし、Java仮想マシンのJavaバイトコードまたは機械語を出力する。また、バイトコードを格納したJavaクラスファイルや、それらを格納したJAR全体をマシン語にコンパイルすることも出来る。GCJで使用されるほとんど全てのランタイムライブラリはGNU Classpathプロジェクトに由来する。 AWTとSwingの2つのグラフィカルAPIをGNU Classpathにサポートさせることに現在多くの労力が投入されている。AWTとSwingの両方のフルサポートは間近であり、AWT/Swingアプリケーションを実行するためにサン・マイクロシステムズから提供されたランタイムを使用する必要性は遠からずなくなる見通しである。 Java Native Interface (JNI) は、Javaプラットフォームにおいて、Javaで記述されたプログラムと、他のプログラミング言語(たとえばCやC++など)で書かれた、実際のCPU上で動作するコード(ネイティブコード)とを連携するためのインタフェース仕様である。Java言語からネイティブコードを利用するためのABIと、逆にネイティブコードからJavaバイトコードを動作させるためにバーチャルマシン (VM) を利用するためのAPIの2つから成る。 JNIを使うことで、Java言語のVMで動作させるには処理速度の面で不利とされる計算量の多いプログラムを部分的にネイティブコードに置き換えて高速化したり、標準Javaクラスライブラリからはアクセスできないオペレーティングシステムあるいはハードウェアの機能を利用するプログラムを、あたかも通常のJavaクラスのメソッドのように呼び出したりできるようになる。逆に、Javaクラスライブラリによって実装されている高水準の機能を、C/C++などで書かれた下位層から利用することもできるようになる。JNIはJava言語以外のJava VM上で動作する言語 (AltJava) からも利用可能である。

GNU Compiler for JavaとJava Native Interface間の類似点

GNU Compiler for JavaとJava Native Interfaceは(ユニオンペディアに)共通で6ものを持っています: アプリケーションプログラミングインタフェースC++JavaJava仮想マシンJavaバイトコード機械語

アプリケーションプログラミングインタフェース

アプリケーションプログラミングインタフェース(、)「インターフェイス」「インターフェース」と表記されることもあるが、本記事では「インタフェース」で統一する。とは、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様である。 APIには、サブルーチン、データ構造、オブジェクトクラス、変数などの仕様が含まれる。APIには様々な形態があり、POSIXのような国際標準規格、マイクロソフトのWindows APIのようなベンダーによる文書、プログラミング言語の標準ライブラリ(例えば、C++のStandard Template Libraryやなど)がある。 商業的に使われる狭義では、各種システムやサービス(ハードウェア、OS、ミドルウェアおよびWebサービス等)を利用するアプリケーションソフトウェア (Application) を開発・プログラミング (Programming) するためのインタフェース (Interface) である。こちらの意味では、システムやサービスから直接提供されないもの、例えば言語の標準ライブラリは含まない。

GNU Compiler for Javaとアプリケーションプログラミングインタフェース · Java Native Interfaceとアプリケーションプログラミングインタフェース · 続きを見る »

C++

C++(シープラスプラス)は、汎用プログラミング言語のひとつである。派生元であるC言語の機能や特徴を継承しつつ、表現力と効率性の向上のために、手続き型プログラミング・データ抽象・オブジェクト指向プログラミング・ジェネリックプログラミングといった複数のプログラミングパラダイムが組み合わされている。C言語のようにハードウェアを直接扱うような下位層向けの低水準言語としても、複雑なアプリケーションソフトウェアを開発するための上位層向け高水準言語としても使用可能である。アセンブリ言語以外の低水準言語を必要としないこと、使わない機能に時間的・空間的コストを必要としないことが、言語設計の重要な原則となっている。

C++とGNU Compiler for Java · C++とJava Native Interface · 続きを見る »

Java

Java(ジャバ、ジャヴァ)は、汎用プログラミング言語とソフトウェアプラットフォームの双方を指している総称ブランドである。オラクルおよびその関連会社の登録商標である。1996年にサン・マイクロシステムズによって市場リリースされ、2010年に同社がオラクルに吸収合併された事によりJavaの版権もそちらに移行した。 プログラミング言語Javaは、C++に類似の構文、クラスベースのオブジェクト指向、マルチスレッド、ガベージコレクション、コンポーネントベース、分散コンピューティングといった特徴を持ち、平易性重視のプログラム書式による堅牢性と、仮想マシン上での実行によるセキュリティ性およびプラットフォーム非依存性が理念とされている。

GNU Compiler for JavaとJava · JavaとJava Native Interface · 続きを見る »

Java仮想マシン

ネイティブコードに変換されて実行される。Java APIとJVMの両者でJava実行環境(JRE)を構成する。 Java仮想マシン(ジャバかそうマシン、、Java VM、JVM)は、Javaバイトコードとして定義された命令セットを実行するスタック型の仮想マシン。APIやいくつかのツールとセットでJava実行環境(JRE)としてリリースされている。この環境を移植することで、さまざまな環境でJavaのプログラムを実行することができる。

GNU Compiler for JavaとJava仮想マシン · Java Native InterfaceとJava仮想マシン · 続きを見る »

Javaバイトコード

Javaバイトコードは、Java仮想マシンが実行する命令形式である。各バイトコードのオペコードは長さが1バイトであるが、引数を持つものもあるため、結果として複数バイトの命令となる。256個のオペコードの全てが使われているのではなく、51個が将来のために予約されている。その他について、Javaプラットフォームの開発元であるサン・マイクロシステムズは、3つのコードを永久に実装しないままにした。

GNU Compiler for JavaとJavaバイトコード · Java Native InterfaceとJavaバイトコード · 続きを見る »

機械語

機械語(きかいご、machine language、machine code 『日本大百科全書』【機械語】 (コトバンクにも転載されている)IT用語辞典 e-words【機械語】、 binary machine languageあるいはbinary machine code)は、コンピュータの中央処理装置(CPU)が直接理解し実行することができる命令からなる言語。マシン語(マシンご)とも。

GNU Compiler for Javaと機械語 · Java Native Interfaceと機械語 · 続きを見る »

上記のリストは以下の質問に答えます

GNU Compiler for JavaとJava Native Interfaceの間の比較

Java Native Interfaceが52を有しているGNU Compiler for Javaは、22の関係を有しています。 彼らは一般的な6で持っているように、ジャカード指数は8.11%です = 6 / (22 + 52)。

参考文献

この記事では、GNU Compiler for JavaとJava Native Interfaceとの関係を示しています。情報が抽出された各記事にアクセスするには、次のURLをご覧ください: