第9章 クラスライブラリについて

9.1 クラスライブラリについて

これまでの章ではクラスの基本的な仕組みについて学習してきました。その中で、以下のような手順でクラスを使ったプログラムを作成してきたことを思い出してください。
① クラスを作成するコードを書く。
→クラスファイルを作成する。(Computer.java、Books.java、etc…)
② クラスを利用するコードを書く。
→クラスをオブジェクト(インスタンス)化し、クラスのメンバー(変数、メソッド)を使う。

しかし、プログラムを行う際に1のコードを、全て自分で書かなければいけないわけではありません。
これまでの章で少し触れましたが、誰かが既に「コンピュータ」に関するクラスを設計していたとすると、利用する側は「コンピュータ」の管理をさせるプログラムを作成する場合、2の手順から行うことができます。
ユーザー自身が作成したクラスに限らず、Javaの標準的な開発環境であるJDKには、よく使われる機能をまとめたクラスライブラリ(classlibrary)と呼ばれるクラスの集まりが備わっています。我々が2の手順からコードを記述できるように、既に設計されたクラスが多数用意されているのです。
特に意識することはなかったと思いますが、EclipseでJavaプロジェクトを作成した時にそのクラスライブラリを確認することができます。

図 9.1.1: Eclipseで確認できるクラスライブラリ

例えばこれまで良く使ってきたクラス(String、例外クラス、etc…)は、「rt.jar」の中にありますので確認してみるのもいいと思います。
では実際にこれまで作成してきたサンプルの中に、どのようなクラスライブラリのクラスを利用してきたのか、次の項で確認してみましょう。

9.1.2 これまで利用してきたクラスライブラリのクラスについて

これまでのサンプル作成の中で、クラスライブラリのクラスを既に使用してきています。
例えば以下のサンプルソースコードを見て下さい。

  package jp.co.f1.basic.ch09;

  import java.util.Scanner;

  public class Sample {
    public static void main(String[] args) {
      try {
        // Scannerクラスをオブジェクト化
        Scanner sin = new Scanner(System.in);

        System.out.print("名前を入力して下さい。>");
        String name = sin.next(); // キーボードから文字入力

        System.out.print("歳を入力して下さい。>");
        int age = sin.nextInt(); // キーボードから数値入力

        // 画面に結果を表示
        System.out.println("名前は" + name + "、年齢は" + age + "歳です。");

      } catch (Exception e) {
        System.out.println(e + "という例外が発生しました。");
      }
    }
  }
  

ソースコード中で利用されている、

  • Scanner:テキスト入力を扱うクラス
  • System:システムに関する様々な機能を提供するクラス
  • String:文字列を扱うクラス
  • Exception:例外を扱うクラス

などが、クラスライブラリで提供されるクラスになります。このような短いプログラムでもクラスライブラリのクラスを複数利用していることが確認できます。
上記のソースコードでは、これらのクラスから次のような変数を宣言して使っています。

さらに、次のようなメソッドを呼び出して、クラスの機能を利用しています。

既に提供されているクラスライブラリのクラスを利用することで、キーボードからの入力処理などのプログラム仕様を自分で作成しなくても済んでいた訳です。自身でこの機能を実装することも可能ですが、大変労力のかかる作業になってしまいますので、提供されるクラスライブラリのクラスを利用するほうが大変便利と言えます。
では次の節で文字列を扱う「String」クラスについて詳しく見ていきましょう。

NEXT>> 9.2 文字列を扱うクラスについて