このページを正しく表示するには、ブラウザでJavaScriptを有効にする必要があります。
コース:スタート・ガイド
レッスン: Javaテクノロジーの概要
Javaテクノロジーについて
ホームページ > スタート・ガイド > Javaテクノロジーの概要

Javaテクノロジーについて

Javaテクノロジーは、プログラミング言語でもありプラットフォームでもあります。

Javaプログラミング言語

Javaプログラミング言語は高水準言語です。次のすべてのワードは、Javaプログラミング言語の特徴を表しています。
  • シンプル
  • アーキテクチャ中立性
  • オブジェクト指向
  • 移植性
  • 分散
  • 高パフォーマンス
  • マルチスレッド
  • 堅牢
  • 動的
  • セキュア
  • これらの各ワードについては、 『The Java Language Environment』(ホワイトペーパー:James Gosling、Henry McGilton共著)で説明しています。

    Javaプログラミング言語では、すべてのソース・コードはまず.java拡張子が付いたプレーン・テキスト・ファイルに記述されます。 次に、これらのソース・ファイルはjavacコンパイラによって.classファイルにコンパイルされます。 .classファイルに含まれるのはプロセッサ・ネイティブのコードではなく、バイトコードです。バイトコードは、Java仮想マシン1(Java VM)のマシン語です。 次に、javaランチャ・ツールで、Java仮想マシンのインスタンスを使用してアプリケーションを実行します。

    MyProgram.java、コンパイラ、MyProgram.class、Java VM、コンピュータ上で実行しているMy Programを順に示した図

    ソフトウェア開発プロセスの概要

    Java VMはさまざまなオペレーティング・システムで利用できるため、同じ.classファイルをMicrosoft Windows、Solaris? Operating System(Solaris OS)、Linux、またはMac OSでも実行できます。 仮想マシン (Java HotSpot仮想マシンなど)には、実行時に処理手順を追加して、アプリケーションのパフォーマンスを大幅に改善できるものもあります。 この処理手順には、パフォーマンス・ボトルネックの検索、よく利用されるセクションのコードの(ネイティブ・コードへの)再コンパイルなどのさまざまなタスクが含まれます。

    ソース・コード、コンパイラ、Win32、Solaris OS/Linux、Mac OSのJava VMを示した図

    Java VMを使用すれば、同じアプリケーションを複数のプラットフォームで実行可能

    Javaプラットフォーム

    プラットフォームとは、プログラムが実行するハードウェア/ソフトウェア環境のことです。 Microsoft Windows、Linux、Solaris OS、Mac OSなど、もっとも一般的なプラットフォームについてはすでに紹介しました。 ほとんどのプラットフォームは、オペレーティング・システムとその基盤となるハードウェアの組み合わせで表すことができます。 Javaプラットフォームは、他のハードウェアベース・プラットフォームの上の層で実行するソフトウェア単独のプラットフォームであるという点で、他のほとんどのプラットフォームと異なります。

    Javaプラットフォームには、次の2つのコンポーネントが含まれます。

    Java仮想マシンはすでに紹介したとおりJavaプラットフォームの基礎となるものであり、さまざまなハードウェアベース・プラットフォームに移植されます。

    APIは、数々の便利な機能を備える既製のソフトウェア・コンポーネントを多数集めたものです。 APIは、関連するクラスやインタフェースのライブラリにグループ化されています。これらのライブラリはパッケージと言います。 次のセクションの Javaテクノロジーで実現できること では、APIで用意されている機能の一部について取り上げます。

    MyProgram.java、API、Java仮想マシン、ハードウェアベース・プラットフォームを示した図

    基盤となるハードウェアからプログラムを分離するAPIとJava仮想マシン

    Javaプラットフォームはプラットフォーム非依存環境であるため、ネイティブ・コードよりもやや速度が遅くなる可能性があります。 しかし、コンパイラおよび仮想マシンのテクノロジーが発展し、移植性に影響を及ぼさずに、ネイティブ・コードに近いパフォーマンスが達成されています。

    "Java仮想マシン"および"JVM"という用語は、Javaプラットフォーム向けの仮想マシンを表します。


    サンプル・プログラムで問題が発生した場合は、 『サンプル・コードのコンパイルと実行: FAQ』をお試しください。
    不満な点や 賞賛、 提案などがあれば、 フィードバックをお願いいたします

    前のページ:Javaテクノロジーの概要
    次のページ: Javaテクノロジーで実現できること