JavaのAPI(Application Program Interface)とは、プログラムを作成するためのクラスの集まりです。さらにクラスはグループごとにパッケージとしてまとめられています。APIには標準で提供されているコアAPIと、別途供給される拡張APIがあります。
Javaでソフトウェアを開発するときに、プログラマーがゼロから全てプログラミングするのは無理だし無駄です。そこで共通してよく利用する機能をAPIとしてまとめて提供しているのです。
プログラマーはルールに従ってAPIを利用することで、自分でプログラミングすることなく、あらかじめ用意された豊富な機能を利用した開発ができます。
現在JavaのAPIにはパッケージとして200以上、クラスは3800以上あります。これらを利用すると、自分では最低限のプログラムを書くだけで済むということになります。
今回は Hello.java で使った以下の文について調べてみましょう。
System.out.println("こんにちは");
実はこの文は使うのは簡単ですが、最初に説明するにはちょっと難しいです。というのはこの文は以下のような構成になっているからです。
クラス名.フィールド名.メソッド名(引数)
通常は次のようになっていて、この構成なら説明が簡単です。
クラス名.フィールド名
クラス名.メソッド名(引数)
*使用するクラスによっては、クラス名の部分がインスタンス名になる場合もあります。
ちょっと説明が難しく感じるかもしれませんが、API 仕様を調べる練習だと思って読んでください。
【1】Javaドキュメントの 「API 仕様」を開きます。
・この講座の手順で進めてきた人は以下のファイルを開きます。ブラウザのお気に入りに追加していれば、お気に入りから開いてください。
JavaTM Platform, Standard Edition 6 API 仕様
C:\jdk\jdk-6-doc-ja\docs\ja\api\index.html
・Javaドキュメントをダウンロードしなかった人は、古いバージョンですが、オンラインマニュアルを開きます。
JavaTM 2 Platform Standard Edition 5.0 API 仕様
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/
【2】API 仕様が表示され、すべてのクラスが表示されています。

*何も表示できない時は、ブラウザのメニューから「表示 → エンコード → Unicode(UTF-8)」を選択してください。
【3】それでは目的のクラスを探してみましょう。まずパッケージから「java.lang」を選択します。

【4】画面下に java.lang のパッケージに含まれるクラスが表示されました。他にもいろいろ表示されていますが、今はクラスだけに注目してください。

*パッケージとはクラスをグループにまとめたものです。実際にはフォルダです。
【5】クラスの一覧から「System」を選択します。

【6】System クラス の説明が表示されました。

【7】System クラス について詳しく見てみましょう。
・System クラス が java.lang.Object を継承していることを表しています。

・継承をソースコードに書くときは以下のようになります。

・参考までにSystem クラス のソースコードです。

すべてのクラスは java.lang.Object を継承することになっているので、extends Object は書かなくてもかまいません。
・System クラスの説明が書かれています。

【8】クラスはフィールドとメソッドから構成されています。

【9】メソッドの概要を見ても目的の println() が見つかりません。実は println() はSystem クラスのメソッドではないからです。

*クラス名.メソッド名(引数)の形だとここで見つかります。
【10】次にフィールドの概要で out を探し選択します。

【11】out についての説明が表示されました。PrintStream.println() を選択します。

【12】println() メソッドについての説明が表示されました。println() メソッドは、PrintStream クラスのメソッドだったのです。

よく見るとprintln() メソッドがいくつも表示されていますね。println() メソッドがいくつもあるのは、メソッドの引数の型により呼び出されるメソッドが自動的に変わる仕組みになっているからです。これをオーバーロードといいます。
メソッドを呼び出す側から見ると、データ型の異なる引数でも同じメソッド名で呼び出せるので便利です。どんな引数でもprintln() メソッドを使うと画面に表示できることさえわかればいいのですから、プログラムを簡単に書くことができます。
System.out.println("こんにちは");
クラス名.フィールド名.メソッド名(引数)だったことを思い出してください。outは、PrintStream クラスのインスタンスで、標準出力ストリームを表しています。この辺が最初の例として説明するには難しいところです。
API 仕様は何度も読み、自分でクラスを作るようになると、だんだん深く理解できるようになりますので安心してください。今回はAPI 仕様の見方がわかればOKです。