ジャバとは? Java プラットフォームの定義、意味、機能
Java とは
Java は、実装への依存度が低くなるように設計された、汎用のクラスベースのオブジェクト指向プログラミング言語です。アプリケーション開発用のコンピューティング プラットフォームです。したがって、Java は高速で、安全で、信頼性があります。ラップトップ、データ センター、ゲーム コンソール、科学用スーパーコンピューター、携帯電話などで Java アプリケーションを開発するために広く使用されています。
Java プラットフォームとは
Java プラットフォーム プログラマーが Java プログラミング アプリケーションを効率的に開発および実行するのに役立つプログラムのコレクションです。実行エンジン、コンパイラ、および一連のライブラリが含まれています。パソコンのソフトウェアと仕様書のセットです。 James Gosling は Sun Microsystems で Java プラットフォームを開発し、後に Oracle Corporation がそれを買収しました。
この Java チュートリアルでは、次のことを学びます-
- Java とは
- Java プラットフォームとは
- Java の定義と意味
- Java は何に使われますか?
- Java プログラミング言語の歴史
- Java のバージョン
- Java の機能
- Java プログラミング言語のコンポーネント
- さまざまな種類の Java プラットフォーム
- PC とは
- アセンブリ言語とは
- アセンブラとコンパイラとは?
- Java 仮想マシンの仕組み
- Java Platform Independent とはどのようなものですか?
このビデオでは、Java プラットフォームについて紹介します 、および Java がプログラミング言語であると同時にプラットフォームでもある理由を説明します。
ビデオにアクセスできない場合は、ここをクリックしてください
Java の定義と意味
Java は、マルチプラットフォーム、オブジェクト指向、およびネットワーク中心の言語です。これは、最も使用されているプログラミング言語の 1 つです。 Java は、コンピューティング プラットフォームとしても使用されます。
ほとんどの組織がプロジェクトの構築に好んで使用する、高速で安全、かつ信頼性の高いプログラミング言語の 1 つと見なされています。
Java は何に使用されますか?
以下にいくつかの重要な Java アプリケーションを示します:
- Android アプリの開発に使用
- 企業向けソフトウェアの作成を支援
- 幅広いモバイル Java アプリケーション
- 科学計算アプリケーション
- ビッグデータ分析に使用
- ハードウェア デバイスの Java プログラミング
- Apache、JBoss、GlassFish などのサーバーサイド テクノロジーに使用
Java プログラミング言語の歴史
Java 言語の歴史における重要なランドマークは次のとおりです。
- Java 言語は当初、OAK と呼ばれていました。
- もともとは、ポータブル デバイスとセットトップ ボックスを処理するために開発されました。オークは大失敗に終わりました。
- 1995 年、Sun は名前を「Java」に変更し、急成長中の www (World Wide Web) 開発ビジネスを利用するために言語を変更しました。
- その後、2009 年に Oracle Corporation が Sun Microsystems を買収し、Java、MySQL、Solaris という 3 つの主要な Sun ソフトウェア資産の所有権を取得しました。
Java バージョン
すべての Java バージョンの簡単な歴史とそのリリース日を以下に示します。
Java バージョン | リリース日 |
---|---|
JDK アルファ版およびベータ版 | 1995年 |
JDK 1.0 | 1996 年 1 月 23 日 |
JDK 1.1 | 1997 年 2 月 19 日 |
J2SE 1.2 | 1998 年 12 月 8 日 |
J2SE 1.3 | 2000 年 5 月 8 日 |
J2SE 1.4 | 2002 年 2 月 6 日 |
J2SE 5.0 | 2004 年 9 月 30 日 |
Java SE 6 | 2006 年 12 月 11 日 |
Java SE 7 | 2011 年 7 月 28 日 |
Java SE 8 | 2014 年 3 月 18 日 |
Java SE 9 | 2017 年 9 月 21 日 |
Java SE 10 | 2018 年 3 月 20 日 |
JAVA SE 11 | 2018 年 9 月 25 日 |
JAVA SE 12 | 2019 年 3 月 19 日 |
JAVA SE 13 | 2019 年 9 月 17 日 |
JAVA SE 14 | 2020 年 3 月 17 日 |
JAVA SE 15 | 2020 年 9 月 15 日 (最新の Java バージョン) |
Java の機能
いくつかの重要な Java 機能を以下に示します:
- 習得しやすいプログラミング言語の 1 つです。
- コードを一度作成すれば、ほぼすべてのコンピューティング プラットフォームで実行できる
- Java はプラットフォームに依存しません。あるマシンで開発された一部のプログラムは、別のマシンで実行できます。
- オブジェクト指向アプリケーションを構築するために設計されています。
- 自動メモリ管理を備えたマルチスレッド言語です。
- インターネットの分散環境用に作成されています。
- ネットワーク中心として分散コンピューティングを促進する
Java プログラミング言語のコンポーネント
Java プログラマーは、ソースコードと呼ばれる人間が読める言語でプログラムを作成します。したがって、CPU やチップは、どのプログラミング言語で書かれたソース コードも理解できません。
これらのコンピューターまたはチップは、機械語またはコードと呼ばれる 1 つのことしか理解できません。これらのマシン コードは、CPU レベルで実行されます。したがって、他のモデルの CPU では異なるマシン コードになります。
ただし、プログラミングはソースコードがすべてであるため、マシンコードについて心配する必要があります。マシンはこのソース コードを理解し、実行可能コードであるマシンが理解できるコードに変換します。
これらの機能はすべて、次の 3 つの Java プラットフォーム コンポーネント内で発生します:
Java 開発キット (JDK)
JDK は、アプレットや Java アプリケーションの作成に使用されるソフトウェア開発環境です。 JDK の完全な形式は Java Development Kit です。 Java 開発者は、Windows、macOS、Solaris、および Linux で使用できます。 JDK は、Java プログラムのコーディングと実行を支援します。同じコンピューターに複数の JDK バージョンをインストールすることができます。
JDK を使用する理由
JDK を使用する主な理由は次のとおりです。
- JDK には、Java プログラムを作成するために必要なツールと、それらを実行するための JRE が含まれています。
- コンパイラ、Java アプリケーション ランチャー、Appletviewer などが含まれます。
- コンパイラは、Java で記述されたコードをバイトコードに変換します。
- Java アプリケーション ランチャーは、JRE を開き、必要なクラスをロードして、メイン メソッドを実行します。
Java 仮想マシン (JVM):
Java 仮想マシン (JVM) は、Java コードまたはアプリケーションを駆動するランタイム環境を提供するエンジンです。 Java バイトコードを機械語に変換します。 JVM は Java 実行環境 (JRE) の一部です。他のプログラミング言語では、コンパイラは特定のシステム用のマシン コードを生成します。ただし、Java コンパイラは、Java 仮想マシンと呼ばれる仮想マシン用のコードを生成します。
JVM を選ぶ理由
JVM を使用する重要な理由は次のとおりです。
- JVM は、Java ソースコードを実行するプラットフォームに依存しない方法を提供します。
- 多数のライブラリ、ツール、フレームワークがあります。
- 一度 Java プログラムを実行すると、どのプラットフォームでも実行できるようになり、多くの時間を節約できます。
- JVM には、Java ソース コードを低レベルの機械語に変換する JIT (Just-in-Time) コンパイラが付属しています。したがって、通常のアプリケーションよりも高速に実行されます。
Java ランタイム環境 (JRE)
JRE は、他のソフトウェアを実行するように設計されたソフトウェアです。これには、クラス ライブラリ、ローダー クラス、および JVM が含まれています。簡単に言うと、Java プログラムを実行するには JRE が必要です。プログラマーでない場合は、JDK をインストールする必要はありませんが、Java プログラムを実行するには JRE だけをインストールする必要があります。
JRE を使用する理由
JRE を使用する主な理由は次のとおりです。
- JRE には、クラス ライブラリ、JVM、およびその他のサポート ファイルが含まれています。デバッガー、コンパイラーなどの Java 開発用ツールは含まれていません。
- math、swing、util、lang、awt、ランタイム ライブラリなどの重要なパッケージ クラスを使用します。
- Java アプレットを実行する必要がある場合は、システムに JRE をインストールする必要があります。
さまざまな種類の Java プラットフォーム
Java プログラミング言語プラットフォームには、次の 4 種類があります。
<強い>1. Java プラットフォーム、標準版 (Java SE): Java SE の API は、Java プログラミング言語のコア機能を提供します。型とオブジェクトのすべての基礎を高レベル クラスに定義します。ネットワーク、セキュリティ、データベース アクセス、グラフィカル ユーザー インターフェイス (GUI) の開発、および XML 解析に使用されます。
<強い>2. Java プラットフォーム、エンタープライズ エディション (Java EE): Java EE プラットフォームは、拡張性が高く、大規模で、多層構造で、信頼性が高く、安全なネットワーク アプリケーションを開発および実行するための API およびランタイム環境を提供します。
<強い>3. Java プログラミング言語プラットフォーム、マイクロ エディション (Java ME): Java ME プラットフォームは、携帯電話などの小型デバイスで Java プログラミング言語アプリケーションを実行する API とフットプリントの小さい仮想マシンを提供します。
<強い>4. Java FX: JavaFX は、軽量のユーザー インターフェイス API を使用してリッチ インターネット アプリケーションを開発するためのプラットフォームです。 Java がネットワーク化されたデータ ソースに接続するための高性能クライアントと最新のルック アンド フィールおよび高レベル API を活用するのに役立つハードウェア アクセラレーション グラフィックスおよびメディア エンジンを使用します。
Java プログラミング言語を理解するには、コンピューター プログラムがコマンドを実行し、アクションを実行する方法の基本概念を理解する必要があります。
PC とは
コンピュータは、計算を実行できる電子デバイスです。情報を保存するために、モニター、キーボード、マウス、およびメモリで構成されていることは誰もが知っています。しかし、コンピュータの最も重要なコンポーネントはプロセッサです。これはすべてコンピューターの思考ですが、問題は、コンピューターがどのようにこの思考を行うのかということです。テキスト、画像、動画などをどのように理解しますか?
<センター>
<図>
センター>
アセンブリ言語とは
コンピュータは電子デバイスであり、電子信号またはバイナリ信号のみを理解できます。たとえば、5 ボルトの電気信号は 2 進数の 1 を表し、0 ボルトは 2 進数の 0 を表す場合があります。したがって、PC はこれらの信号で継続的に攻撃されます。
このような信号の 8 ビットは、テキスト、数値、および記号を解釈するためにグループ化されます。
たとえば、# 記号はコンピュータによって 10101010 として識別されます。同様に、関数を追加するためのパターンは 10000011 で表されます。
これは 8 ビット コンピューティングとして知られています。現在のプロセッサは 64 ビット時間をデコードできます。しかし、この概念とプログラミング言語 JAVA との関係は?これらを例として理解しましょう。
2 進数 (10000011) で表される 2 つの数値 (1+2) を加算するようにコンピューターに指示したい場合、コンピューターにどのように指示するのでしょうか?はい、アセンブリ言語を使用してコードを実行します。
「アセンブリ言語は、ソフトウェア開発言語の最も基本的な形式です。」
以下に示すように、この形式でコマンドをコンピューターに与えます。この言語で 2 つの数字を加算するコードは、この順序になります。
- 記憶場所に番号 1 を保存すると、A と言う
- 記憶場所に番号 2 を保存し、B と言います
- ロケーション A と B のコンテンツを追加
- 結果を保存
しかし、これをどのように行うのでしょうか。 1950 年代、コンピューターが巨大で大量の電力を消費していたときは、マッピング シートを使用して、アセンブリ コードを 1 と 0 に対応するマシン コードに変換していました。後で、このコードはマシンのカードに打ち込まれ、コンピューターに送られます。コンピュータはこれらのコードを読み取り、プログラムを実行します。 ASSEMBLER が助けに来るまで、これは長いプロセスになります。
アセンブラとコンパイラとは?
テクノロジーの進歩に伴い、i/o デバイスが発明されました。 ASSEMBLER を使用して、プログラムを PC に直接入力することができます。それを対応するマシン コード (110001..) に変換し、プロセッサに供給します。 (1+2) の加算の例に戻ると、アセンブラーはこのコードをマシンコードに変換して出力します。
それとは別に、コードの出力を表示するために、オペレーティング システムが提供する関数を作成するための呼び出しも行う必要があります。
しかし、アセンブラーだけがこのプロセスに関与することはありません。また、コンパイラが長いコードを小さなコードのチャンクにコンパイルする必要があります。ソフトウェア開発言語の進歩により、このアセンブリ コード全体が 1 行に縮小される可能性があります print f 1+2 A COMPILERというソフトで。これは、C 言語コードをアセンブリ コードに変換するために使用されます。アセンブラは、それを対応するマシン コードに変換します。このマシンコードはプロセッサに送信されます。 PC またはコンピュータで使用される最も一般的なプロセッサは Intel プロセッサです。
現在のコンパイラにはアセンブラがバンドルされていますが、高等言語コードを機械語コードに直接変換できます。
ここで、Windows オペレーティング システムがこの Intel プロセッサで実行されているとします。オペレーティング システムとプロセッサの組み合わせをプラットフォームと呼びます。世界で最も一般的なプラットフォームは Windows であり、Intel は Wintel プラットフォームと呼ばれています。その他の一般的なプラットフォームは、AMD と Linux、Power PC、Mac OS X です。
現在、プロセッサーの変更に伴い、組み立て手順も変更されます。例:
- Intel での追加命令は、AMD では ADDITION と呼ばれる場合があります
- Power PC 用 OR Math ADD
また、オペレーティング システムの変更に伴い、OS レベルの呼び出しのレベルと性質も変更されます。
開発者として、自分のソフトウェア プログラムがすべてのプラットフォームで動作し、収益を最大化できるようにしたいと考えています。そのため、print f コマンドをネイティブ マシン コードに変換する別のコンパイラを購入する必要があります。
しかし、コンパイラは高価になり、互換性の問題が発生する可能性があります。そのため、OS やプロセッサごとに個別のコンパイラを購入してインストールすることは現実的ではありません。では、代替ソリューションは何でしょうか? Java 言語を入力してください。
Java 仮想マシンの仕組み
Java 仮想マシンを使用する 、この問題は解決できます。しかし、異なるプロセッサと OS でどのように動作するか。このプロセスを段階的に理解しましょう。
ステップ 1) 2 つの数値の加算を表示するコードは System.out.println(1+2) で、.java ファイルとして保存されます。
ステップ 2) Java コンパイラを使用して、コードは バイトコード と呼ばれる中間コードに変換されます。 出力は .class ファイルです。
ステップ 3) このコードはどのプラットフォームでも理解されませんが、Java 仮想マシン と呼ばれる仮想プラットフォームだけが理解できます。
ステップ 4) この仮想マシンは、オペレーティング システムの RAM に存在します。仮想マシンにこのバイトコードが供給されると、動作しているプラットフォームを識別し、バイトコードをネイティブ マシン コードに変換します。
PC での作業中または Web の閲覧中に、これらのアイコンのいずれかが表示されたときはいつでも、Java 仮想マシンが RAM にロードされていることを確認してください。しかし、Java が儲かる理由は、コードがコンパイルされると、すべての PC プラットフォームだけでなく、Java をサポートする携帯電話やその他の電子機器でも実行できることです。
したがって、
「Java はプログラミング言語であり、プラットフォームでもあります」
Java Platform Independent はどのようになっていますか?
C コンパイラと同様に、Java コンパイラは特定のマシン用のネイティブ実行可能コードを生成しません。代わりに、Java はバイトコードと呼ばれる独自の形式を生成します。仮想マシンの仕様に定められたルールに従って実行されます。したがって、Java はプラットフォームに依存しない言語です。
バイトコードは、任意の OS にインストールされた任意の JVM で理解できます。つまり、Java ソース コードはすべてのオペレーティング システムで実行できます。
まとめ:
- Java は、マルチプラットフォーム、オブジェクト指向、およびネットワーク中心のプログラミング言語です。Java は、汎用のクラスベースのオブジェクト指向プログラミング言語です。
- Java プラットフォームは、プログラマーが Java アプリケーションを効率的に開発および実行するのに役立つプログラムのコレクションです。
- Java の意味:Java は、マルチプラットフォームのネットワーク中心のプログラミング言語です。
- 主に Android アプリとエンタープライズ ソフトウェアの開発に使用されます。
- 2009 年、Oracle Corporation は Sun Microsystems を買収し、Sun の 3 つの主要なソフトウェア資産である Java、Solaris、MySQL の所有権を取得しました。
- 2020 年 9 月 15 日にリリースされた Java の最新バージョン
- Java の最大の特徴は、最も簡単に習得できるプログラミング言語の 1 つであることです。
- 4 種類の Java プログラミング言語プラットフォーム:1) Java プラットフォーム、標準版 (Java SE) 2) Java プラットフォーム、エンタープライズ版 (Java EE) 3) Java プラットフォーム、マイクロ版 (Java ME) 4) JavaFXリ>
- コンピュータは、計算を実行できる電子機器です。
- コンピュータは電子信号またはバイナリ信号しか理解できません。
- アセンブラは、ソースコアを対応するマシンコード (110001..) に変換してプロセッサに供給する高度なテクノロジーです。
Java