Previous | Next | Trail Map | Writing Java Programs | システム資源の使用


System クラスの使用

他のほとんどのクラスと異なり、インスタンス化することなしに System クラスを使用することができる。(より正確には、 System クラスをインスタンス化することができない。System クラスは final クラスであり、そのコンストラクタのすべてがプライベイトである。)

System クラスの変数とメソッドのすべてが static と宣言されたクラス変数とクラスメソッドである。クラス変数とクラスメソッドについての解説、およびインスタンス変数とインスタンスメソッドとの差異については、 インスタンスとクラスメンバ(in the Writing Java Programs trail)オブジェクト、クラス、インタフェースのインスタンスとクラスメンバを参照のこと。

クラス変数を使用するためには、 Java のドット ('.') 表記法を用いているクラス名から直接使用する。 例えば、 System のクラス変数 out を参照するためには、変数名( out )をクラス名( System )の後に次のようにピリオド ('.') で区別して追加する。

System.out 

同様の方法でクラスメソッドを呼び出す。 例えば、システムクラスのメソッド getProperty ()を呼び出すためには、メソッド名をクラス名の後にピリオド ('.') で区切って追加する。 メソッドの引数は、括弧内に入れる。引数がなければ、括弧は空である。

System.getProperty(argument);

次の Java プログラムは、最初に現行ユーザ名を検索し、次にそれを表示するために System クラスを(2度)使用する。

class UserNameTest {
    public static void main(String args[]) {
        String name;
        name = System.getProperty("user.name");
        System.out.println(name);
    }
}

プログラムが決して System オブジェクトをインスタンス化しなかったことに注意する。直接クラスから getProperty() メソッドと out 変数を参照した。

コード例で使用した System の getProperty() メソッドは、 user.name と呼ばれるプロパティに対してプロパティデータベースを検索する。システムプロパティと getProperty() メソッドについては、この後の System プロパティ でさらに説明する。

System.out は標準出力を実装する PrintStream である。 System.out.println() メソッドは標準出力に引数を出力する。

次のページ では、標準出力とSystem クラスが提供する2つの標準入出力ストリームについて説明する。


Previous | Next | Trail Map | Writing Java Programs | システム資源の使用