Java(ジャバ)とは?プログラミング言語、ダウンロード

スポンサーリンク
プログラミング言語

プログラミング言語 Javaについて調べてみました。

Java(ジャバ)とは?意味、プログラミング言語

Javaは、狭義ではサン・マイクロシステムズが開発したプログラミング言語です。

一方、Javaは開発環境やJVM (Java Virtual Machine) と呼ばれる仮想的な実行環境を指すこともあり、広義ではJavaプログラムの実行環境です。

 

サン・マイクロシステムズはオラクルに買収されたので、現在はOracleによる管理の他、追加提案などはサン時代から続いているJava Community Process (JCP) というプロセスによって進められています。

Java(ジャバ)は、狭義ではプログラミング言語Javaを指す。広義では言語仕様以外にも、仕様が与えられているJavaクラスライブラリやJava仮想マシン、さらにはJDKやJREなどの公式のものをはじめとする、場合によってはサードパーティのものなどを含め曖昧にJavaプラットフォームと総称されるようなものなどのエコシステムなどを指すこともある。

Javaの特徴 (メリット)

Javaの特徴として、異なるOSで同じバイトコードがそのまま動作する

Write once, run anywhere

という言葉があります。

 

Javaの特徴は以下の通りです。

Javaを開発する上では、5つの目標があった。

  • オブジェクト指向プログラミングの方法論を採用する
  • 異なるOS上で同一のプログラムが動くようにする
  • コンピュータネットワークを扱う機能を標準で備える
  • 遠隔のコンピュータ上にある実行コードを安全に実行できるよう設計する
  • 開発をしやすくするために、従来のSmalltalk、C++などのオブジェクト指向プログラミング言語から良い部分を引き継ぐ

ネットワーク機能および遠隔コンピュータの実行コードの実行を実現するために、場合によっては、Javaプログラマは、CORBAやInternet Communications Engine、OSGiのような拡張機能を使う。

JREとJDKの違い

JRE (Java Runtime Environment)とは

Javaの実行環境は、Java実行環境(Java Runtime Environment;JRE)と呼ばれています。

JREは実行環境です。

このソフトウェア群はJava仮想マシン (JVM) とアプリケーションプログラミングインタフェース (API) から成り立っている。APIは標準Javaクラスライブラリのセットを提供する。仮想マシンとAPIは互いに互換性がなければならず、それゆえJREとして共にバンドルされている。これは仮想マシンがプロセッサであり、APIがユーザインタフェースであるような仮想的なコンピュータと考えることができる。

デスクトップマシンではJREがなければJavaアプリケーションを動かすことができない。現在のJREのバージョンではJava Web Startも同梱されている。インストール時にMozilla Firefox、Opera、Internet ExplorerなどのウェブブラウザにJava Plug-inをインストールするか聞いてくる。これはブラウザでJavaアプレットを動かし、Java Web Start対応Javaアプリケーションを起動できるようにするために必要なものであり、単純にFlashをブラウザ上で直接実行したり、ブラウザ外部のメディアプレーヤーを起動したりといったのと同じプラグインの一種である。JREのアップデートには、旧バージョンを削除しないものがあった。複数のバージョンが混在している場合、セキュリティに問題がある旧バージョンを手動で削除するよう呼びかけている。

JREはJavaアプリケーション開発に必要なJavaコンパイラが入っているJava Development Kit(Java開発キット, JDK, Java SDK)にも同梱されている。

JDK (Java Development Kit)とは

Java の基本的な開発環境は、Java開発キット(Java Development Kit;JDK)と呼ばれます。

JDKは開発キットです。

JDKにはJREが含まれます。

Java Development Kit (JDK) は、Solaris、Linux、macOSまたはWindows上でのJava開発者向けのバイナリ形式でありオラクルによりリリースされる、Java SE、Java EEやJava MEの各プラットフォーム全ての実装である。Javaプラットフォームの導入以来、JDKは最も広く使われているソフトウェア開発キット (SDK) である。2006年11月17日に、サンはJDKをGNU General Public License (GPL) に基づきリリースすると発表した。従ってJDKはフリーソフトウェアである。このことは、サンはJDKのソースコードをOpenJDKに寄付した2007年5月8日に現実となった。

Java SE, Java EE, Java MEの違い

Java SE (旧J2SE)とは

JavaSEは標準APIになります。基礎となる標準的な機能をまとめたものです。

https://docs.oracle.com/javase/jp/7/

Oracle には、Java Platform Standard Edition (Java SE) 7 を実装する製品として、Java SE Development Kit (JDK) 7 および Java SE Runtime Environment (JRE) 7 という 2 つの製品があります。

JDK 7 は JRE 7 のスーパーセットで、JRE 7 のすべての機能に加えて、アプレットやアプリケーションの開発に必要なコンパイラおよびデバッガなどのツールを備えています。JRE 7 は、Java プログラミング言語で記述されたアプレットやアプリケーションを実行するためのライブラリ、Java 仮想マシン (JVM)、その他のコンポーネントを提供します。JRE には、標準および非標準 Java コンポーネントなど、Java SE 仕様では要求されていないコンポーネントも含まれます。

次の概念図に、Oracle の Java SE 製品のコンポーネントを示します。

 

バージョン2から5までの表記がJ2SEで、6以降はJavaSEと表されます。

Java Platform, Standard Edition または Java SE(バージョン5.0までは Java 2 Platform, Standard Edition または J2SEと呼ばれていた)は多くのJavaプラットフォームプログラムで役立つJava APIの集合体である。

Java EE (J2EE)とは

Java EEには、Java SEのAPI以外に企業用途(Enterprise)のサーバー用の機能が追加されたAPIが含まれます。

Webサーバー対話処理のためのサーブレット関連のAPIなどがここに含まれます。

Java ME (J2ME)とは

Java MEには、情報家電や携帯端末や組み込み機器向けの機能セットとなるAPIが含まれます。

Javaのダウンロード (download)

JREのダウンロード

Javaの公式ダウンロードサイトは以下の通りです。

無料Javaソフトウェアをダウンロード
このページから、Java Runtime Environment (JRE、Java Runtime) - Java Plug-in (Plugin)、Java Virtual Machine (JVM、VM、Java VM)ともいいます - をダウンロードするか、ご使用のJava Runtime Environmen...

 

Javaは、マルチプラットフォーム対応です。

すべてのプラットフォームのJavaのダウンロード一覧は以下の通りです。

全オペレーティング・システム用のJavaのダウンロード
Javaソフトウェアの手動ダウンロードのページ。最新バージョンのWindows版、Solaris版およびLinux版Java Runtime Environment (JRE)を入手できます。Apple社のMac OSプラットフォームへのリンクを含みます。

ここからWindows版、Mac OS X版、Linux版、Solaris版をダウンロード可能です。

JDKのダウンロード

開発を行うためのJDKは以下のサイトからダウンロードします。

英語サイトですが、Javaは問題ありません。

Java SE Development Kit 8 - Downloads
Download JDK 8, a development environment for building applications and components using the Java programming language.

 

Javaの古いバージョンをダウンロード

最新ではなくて古いバージョンのJavaをダウンロードしたい時があります。

そんな時は、以下のサイトを参照してください。

Java言語とは?ダウンロード、過去の古いバージョン、アップデート(リビジョン) Java Archive
コンピューターにおけるJavaとは何なんでしょうか?初心者にもわかりやすく解説してみました。Java言語とは何か?意味は?初心者にもわかりやすくJavaは、狭義ではコンピューターにおけるプログラミング言語のひとつです。読み方は、ジャバです。

 

Java 32bit か 64bit か?

JREもJDKの32ビット版と64ビット版が用意されています。

32ビット版は、Windows x86 です。

64ビット版は、Windows x64 です。

 

Windowsを使っている場合、自分のWindowsが32ビットか64ビットかを調べるには以下を参考にして下さい。

マイクロソフトWindowsの歴史年表、OSの種類、バージョン一覧、比較評価まとめ
パソコン向けでは、最も使われているOSであるWindowsについて調べてみました。 Windowsとは マイクロソフトWindowsは、もともとはDOS (Disk Operating System) というキャラクタベースのオペレーテ...

Java バージョン、アップデート履歴

Javaのバージョン、アップデートの履歴は以下の通りです。

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 6 Update 10

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

Java wiki

Javaに関するWikiは以下の通りです。

Java - Wikipedia

こちらのサイトに詳しく書かれています。

Java 初心者のための入門サイト

Javaを初心者が学ぶための入門サイトはいくつかあります。

以下にまとめました。

 

一番簡単なJava入門

一番かんたんなJava入門 | 一番かんたんなJava入門
Javaの初心者を対象とした入門講座です。とことん丁寧にそして如何に効率よくJavaを理解できるかにこだわって作りました。1を100にしてくれるサイトは数多くありますし非常に役に立ちますが、当入門講座は0を1にするのが目的です。どうぞ最初の第一歩を踏み出して下さい。

 

マンガで分かるJava入門講座

マンガで分かる Java入門講座 - マンガPG
プログラミングやITをマンガで解説するサイト。

 

初心者の方でも分かりやすい学習サイト JavaDrive

Let'sプログラミング ~初心者の方を対象としたプログラミングの総合学習サイト~
Let'sプログラミングでは初心者の方を対象にJavaやPython、PHP、Rubyなど色々なプログラミング言語の解説を行っています。

Javaを学習する本

Javaを学習するのにおすすめの本は以下の通りです。

 

スッキリわかるJava入門 第2版 (スッキリシリーズ)

新品価格
¥2,808から
(2018/8/9 10:42時点)

C言語、C++、C#との比較

C言語、C++、C#との比較は、次の通りです。

C言語とは?できること、初心者入門サイト、ソフト、使い方
プログラミング言語 C言語について調べてみました。 C言語とは C言語は、現時点で最も使用されているプログラミング言語の一つです。 C言語(シーげんご)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発した...
C++とは?初心者が学習?できること、難しい?特徴、CやJavaとの違い
プログラミング言語 C++について調べてみました。 C++とは?C言語との違い C++は、文字通りC言語の拡張版で、元々はC言語にオブジェクト指向の概念を取り入れたものでした。 C++(シープラスプラス)は、汎用プログラミング言語の一...
C# (Cシャープ) とは?入門、Javaとの違い、ゲーム、配列、本
プログラミング言語 C# について調べてみました。 C#(シーシャープ)とは C#はJavaと並んで現在、最も使われている言語の一つです。 C#(シーシャープ)は、アンダース・ヘルスバーグが設計(デザイン)したプログラミング言語であり...

 

コメント