Java APIについて(初心者編)

はじめに

本記事では、Java APIについて触れていきたいと思います。Javaで開発をおこなう時、必ずと言って良い程、APIを利用しています。まずはAPIとは何なのか、解説していきましょう。

APIとは

APIとは「Application Programming Interface」の略で、簡単に言うと外部ソフトウェアが持っている機能などが提供され、他の開発者が使えるようになっているものです。IT業界の広い視点から見た場合、提供されるかたちは様々ですが、今回の”Java”視点でいうAPIのかたちは、外部から共有(提供)されるクラスやインターフェースの事を指します。

APIを活用するのメリット

APIを有効活用する事で、開発者は無駄なプログラムを一から作る必要がなくなり、またソースコードも簡潔にまとまり、さらに、無駄な手間が省けるため、より自身の制作物に専念して開発をおこなう事ができます。プログラミング初心者がJavaで真っ先に学び、何気なく使っている「System.out.println()」というコードですが、私達が簡単に”指定したデータを表示する”事ができるのは、この機能を実は誰かが一からプログラミングし、APIとして他の誰でも使えるように共有してくれているからです。今でこそ、私達は既に作られているクラスを当たり前のように取り入れながら開発をしている訳ですが、昔の先人達は同じようなクラスをプロジェクト毎に一から書いていたのかと思うととても気が遠くなりますが、今ではAPIによりこのような作業が省けるという事が、最大のメリットと言えるでしょう。

APIリファレンスとは

APIリファレンスとは、先述したJava API(クラスやインターフェース)の情報を網羅した公式ドキュメントの事を言います。その中にはJava パッケージ、クラス、コンストラクタ、フィールド、メソッドなどの細かな仕様など、Javaを使用し開発する人のための様々な情報が記載されています。APIリファレンスに記載されているクラスファイルは既に4000程の内容があるとされ、そのひとつひとつに大量のメソッドが格納されています。この事を考えると、これらの情報を全て頭に入れ、覚えることはまず難しいといえるでしょう。しかしAPIリファレンスを上手く参照することで、Java開発者はプログラムを書く中で必要に応じて調べ、情報を得て活用する事ができるのです。

APIリファレンスの見方について

初心者にも馴染みのあるStringクラスをみていきましょう。
まず、APIリファレンス(今回はJava(tm) Platform, Standard Edition 8)からStringクラスを探していきます。全てのパッケージが選択されている状態で、クラス一覧からアルファベット順をたどりStringクラスを探したり、または該当するパッケージから辿ることもできます。

Stringクラスを探せたら、クラスを選択します。選択後のページ上部には、そのクラスが属しているパッケージ(Stringクラスの場合はjava.lang)が表示され、クラスの概要欄からはこのクラスがどういった用途で主に使われるものなのかを大まかに知ることができます。

ページを下に進むと、このクラス自体の概要、フィールド、コンストラクタ、メソッドの項目に分けて記載されています。

コンストラクタからは、このクラスのオブジェクトがどういった引数をもって生成するのかを知ることができ、さらに下に進みメソッド一覧を見ると、具体的に物事を処理してくれる機能(メソッド)が簡単な説明とともに多く紹介されています。

調べたいメソッド名をクリックすれば、メソッドの詳細リンクに飛ぶことができます。試しに、”指定したインデックス値を返す”「charAt()」メソッドを覗いてみると、まず冒頭で「public char charAt(int index)」と、装飾詞や戻り値、引数の型などが一目で分かります。更に詳細に記載されている説明からは例外なども知ることができます。
APIリファレンスとは、このようにパッケージという大きな枠から各メソッド詳細まで、事細かに書かれている事が分かりました。

非推奨APIとは

ちなみに、上記の過程で様々なAPIを見ていると「非推奨」と書かれたものが存在しています。これは、例えば新しいAPIをリリースする事になった場合、それに類似する古いAPIの重要性や効率性が悪くなっていく事により発生するものです。ゆくゆくは廃止、つまり存在しないAPIになる可能性もあります。これをすぐに廃止しないのは、既にこのAPIを使っているものへの互換性を保つためという事もあるのでしょう。非推奨APIには「~~(別メソッド)に置き換えられています」といったような記載があるので、是非参照してみてください。

おわりに

今回はJava APIについて、表面的な部分だけを簡単に説明してきましたが、これはまだ浅い知識にすぎません。Java初心者がはじめからAPIリファレンスを参照しAPIを使いこなすというのは難しいでしょう。まずは自身の作りたいプログラムを想像し、実際にソースコードを書いゆく過程で、何気なく使っている機能を実際にAPIリファレンスで調べ、仕様を読むなどして幅を広げていくと良いでしょう。最後まで読んでいただきありがとうございました。