Javaは、1995年5月にSun Microsystems会社によって発表されたJavaオブジェクト指向プログラミング言語およびJavaプラットフォームの総称です。 James Goslingと彼の同僚によって共同開発され、1995年に正式的に発売されました。
その後、Sun会社はOracle会社に買収され、JavaもOracle会社の製品になりました。
Javaは下記の3つのシステムに分かれています。
- JavaSE(J2SE)(Java2 Platform Standard Edition、Java Platform Standard Edition)
- JavaEE(J2EE)(Java 2 Platform、Enterprise Edition、Java Platform Enterprise Edition)
- JavaME(J2ME)(Java 2 Platform Micro Edition、Java Platform Micro Edition)。
2005年6月にJavaOne会議が開催され、SUN会社はJava SE 6を公開しました。 このとき、Javaのさまざまなバージョン名が変更され、その中の“2”がを削除されました。J2EEはJava EEに変更され、J2SEはJava SEに変更され、J2MEはJavaMEに変更されました。
目次
主な特徴
Java言語は簡単です
Java言語の構文はC言語とC ++言語に非常に近いため、ほとんどのプログラマーは簡単に学習して使用できます。一方、Javaは、演算子のオーバーロード、多重継承、自動的な型変換など、C ++であまり使用されず、理解しにくく、混乱を招く機能を破棄します。 特に、Java言語はポインタを使用せず、参照を使用します。 また、メモリスペースの自動割り当てと回復を提供するため、プログラマはメモリ管理について心配する必要がありません。
Java言語はオブジェクト指向です
Java言語は、クラス、インターフェース、継承などのオブジェクト指向機能を提供します。簡単にするために、クラス間の単一継承のみをサポートしますが、インターフェース間の多重継承をサポートし、クラスとインターフェース間の実装メカニズムをサポートします(キーワードは implementsです)。 Java言語は動的バインディングを完全にサポートしていますが、C ++言語は仮想関数にのみ動的バインディングを使用します。つまり、Java言語は純粋なオブジェクト指向プログラミング言語です。
Java言語が配布されます
Java言語は、インターネットアプリケーションの開発をサポートします。基本的なJavaアプリケーションプログラミングインターフェイスには、ネットワークアプリケーションプログラミングインターフェイス(java net)があり、URL、URLConnection、Socket、ServerSocketなどのネットワークアプリケーションプログラミング用のクラスライブラリを提供しています。 JavaのRMI(Remote Method Activation)メカニズムも、アプリケーションを配布するため、重要な手段です。
Java言語は堅牢です
Javaの強力な型付けメカニズム、例外処理、自動ガベージコレクションなどは、Javaプログラムの堅牢性を保証する重要な要素です。ポインタを破棄することは、Javaにとって賢明な選択です。Javaのセキュリティチェックメカニズムにより、Javaはより堅牢になれます。
Java言語は安全です
Javaは通常、ネットワーク環境で使用されます。このため、Javaは、悪意のあるコード攻撃を防ぐためのセキュリティメカニズムを提供します。Java言語には多くのセキュリティ機能がある以外、Javaにはネットワークを介してダウンロードされたクラスのセキュリティ保護メカニズム(クラスClassLoader)があります。例えば、同じ名前のローカルクラスの置換を防ぐために異なる名前空間を割り当て、バイトコードをチェックします。そして、セキュリティ管理メカニズム(クラスSecurityManager)を提供し、Javaアプリケーションにセキュリティガードを設定できます。
Java言語はアーキテクチャに依存しません
Javaプログラム(サフィックスがJavaであるであるファイル)は、Javaプラットフォーム上でアーキクラスのサフィックスがclassであるファイル)にコンパイルされ、Javaプラットフォームが任意のシステムで実行できます。これは、異種ネットワーク環境とソフトウェアディストリビューションに適しています。
Java言語は移植可能です
この移植性は、アーキテクチャの中立性に由来します。さらに、Javaは、各基本データ型の長さも厳密に規制します。 Javaシステム自体にも強力な移植性があります。JavaコンパイラはJavaで実装され、Javaの実行環境はANSI Cで実装されます。
Java言語は解釈されます
上記が説明したように、JavaプログラムはJavaプラットフォームでバイトコード形式にコンパイルされ、Javaプラットフォームが任意のシステムで実行できます。実行する時に、JavaプラットフォームのJavaインタープリターがこれらのバイトコードを解釈して実行し、実行プロセスには必要なクラスが接続する時に実行環境にロードされます。
Javaは高性能です
解釈された高級なスクリプト言語と比較すると、Javaは確かに高性能です。実際、Javaの実行スピードは、JIT(Just-In-Time)コンパイラテクノロジの開発により、C++にますます近づいています。
Java言語はマルチスレッドです
Java言語では、スレッドはThreadクラスまたはその子(孫)クラスによって作成される必要がある特別なオブジェクトです。 スレッドを作成するには、通常、2つのメソッドがあります。1つは、Thread(Runnable)型のコンストラクタサブクラスを使用してRunnableインターフェイスのオブジェクトをスレッドにラップします。もう1つは、Threadクラスからサブクラスを派生させてrunメソッドをオーバーライドします。このサブクラスによって作成されるオブジェクトはスレッドです。 ThreadクラスがRunnableインターフェイスを実装していることは注目すべきであるため、どのスレッドにもrunメソッドがあり、runメソッドにはスレッドによって実行するコードが含まれています。スレッドのアクティビティは、一連のメソッドによって制御されます。Java言語は、複数のスレッドを同時に実行することがサポートし、複数のスレッド間の同期メカニズムを提供します。(キーワードはsynchronizedです)
Java言語は動的です
Java言語の設計目標の1つは、動的に変化する環境に適応することです。 Javaプログラムに必要なクラスは、ランタイム環境に動的にロードできます。また、必要なクラスは、ネットワークを介してロードできます。 これは、ソフトウェアのアップグレードにも役立ちます。さらに、Javaのクラスには、ランタイム型チェックを実行できるランタイム表現があります。
発展の歴史
- 1995年5月23日に、Java言語が誕生しました。
- 1996年1月に、最初のJDK-JDK1.0が誕生しました。
- 1996年4月に、最も重要な10個のオペレーティングシステムベンダーが、製品にJAVAテクノロジを組み込むことを宣言しました。
- 1996年9月に、JAVAテクノロジを使用して約83,000個のWebページが作成されました。
- 1997年2月18日に、JDK1.1がリリースされました。
- 1997年4月2日に、JavaOne会議が開催され、参加者は10,000人を超え、当時世界中同類な会議の最大規模を記録しました。
- 1997年9月に、JavaDeveloperConnectionコミュニティのメンバーは100,000人を超えました。
- 1998年2月に、JDK1.1は2,000,000回以上ダウンロードされました
- 1998年12月8日に、JAVA2の Enterprise PlatformであるJ2EEがリリースされました。
- 1999年6月に、SUN会社はJavaの3つのバージョンをリリースしました。Standard Edition(JavaSE、以前はJ2SE)、Enterprise Edition(JavaEE、以前はJ2EE)、Micro Edition(JavaME、以前はJ2ME)です。
- 2000年5月8日に、JDK1.3がリリースされました。
- 2000年5月29日に、JDK1.4がリリースされました。
- 2001年6月5日に、NOKIAは2003年までに1億台のJava対応携帯電話を販売すると発表しました。
- 2001年9月24日に、J2EE1.3がリリースされました。
- 2002年2月26日に、J2SE1.4がリリースされ、それ以降、Javaの計算能力が大幅に向上しました。
- 2004年9月30日の午後18:00に、J2SE1.5がリリースされ、Java言語の開発の歴史におけるもう1つのマイルストーンになりました。このバージョンの重要性を表すために、名前はJ2SE1.5からJava SE5.0に変更されました。
- 2005年6月に、JavaOne会議が開催され、SUN会社はJava SE 6を公開しました。このとき、Javaの各バージョンの名前が変更され、名前にある“2”がキャンセルされました。J2EEはJava EEに変更され、J2SEはJava SEに変更され、J2MEはJavaMEに変更されました。
- 2006年12月に、Sun会社はJRE6.0をリリースしました
- 2009年4月20日に、オラクル会社は74億米ドルでSunを買収し、Javaの著作権を取得しました。
- 2010年11月に、Javaコミュニティに対するオラクル会社の不親切さのために、ApacheはJCPから撤退すると脅迫しました。
- 2011年7月28日に、オラクル会社はJava7.0の公式バージョンをリリースしました。
- 2014年3月18日に、オラクル会社はJava SE 8を発表しました。
- 2017年9月21日に、オラクル会社はJava SE 9を発表しました。
- 2018年3月21日に、オラクル会社はJava SE 10を発表しました。
- 2018年9月25日に、Java SE 11がリリースされました。
- 2019年3月20日に、Java SE 12がリリースされました。
Java開発ツール
Java言語は、システムメモリが1G以上であることを確認しようとします。その他のツールは、次のとおりです。
- Linuxシステム、Mac OSシステム、Windows 95/98/2000 / XP、WIN7 / 8システム。
- Java JDK 7、8……
- vscodeエディタまたは他のエディタ。
- IDE:Eclipse、IntelliJ IDEA、NetBeansなど。
上記のツールをインストールした後、最初のJavaプログラム “Hello World!”を出力できます。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
次の記事では、Java開発環境を構成する方法を説明します。
コメントを残す