全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.lang.Object

java.lang.Object

public class Object
Object クラスはクラス階層のルートとなるクラスです。すべてのクラスはスーパークラスとして Object を持ちます。配列を含むすべてのオブジェクトはこのクラスのメソッドを実装します。

参照:
Class

Constructor Index

 o Object()

Method Index

 o clone()
このオブジェクトと同じクラスの新しいオブジェクトを作成する。
 o equals(Object)
2 つの Object が同じかどうか比較する。
 o finalize()
ガーベージコレクションによって、そのオブジェクトへの参照がないと判断されたときに、ガーベージコレクタによって呼び出される。
 o getClass()
オブジェクトの実行時クラスを返す。
 o hashCode()
オブジェクトのハッシュコード値を返す。
 o notify()
オブジェクトのモニタで待機中の 1 つのスレッドを再開する。
 o notifyAll()
オブジェクトのモニタで待機中のすべてのスレッドを再開する。
 o toString()
オブジェクトの文字列表現を返す。
 o wait()
このオブジェクトの変化がほかのスレッドによって通知されるまで待機する。
 o wait(long)
このオブジェクトの変化がほかのスレッドによって通知されるまで待機する。
 o wait(long, int)
このオブジェクトの変化がほかのスレッドによって通知されるまで待機する。

Constructors

 o Object
  public Object()

Methods

 o getClass
 public final native Class getClass()
オブジェクトの実行時クラスを返します。

返り値:
オブジェクトの実行時クラスを表す Class 型のオブジェクト
 o hashCode
  public native int hashCode()
オブジェクトのハッシュコード値を返します。このメソッドは、 java.util.Hashtable によって提供されるようなハッシュテーブルで使用するために用意されています。

hashCode メソッドの一般的な規則を次に示します。

返り値:
このオブジェクトのハッシュコード値
参照:
equals, Hashtable
 o equals
  public boolean equals(Object obj)
2 つの Object が同じかどうか比較します。

equals メソッドは同等関係を実装します。

Object クラスの equals メソッドは、最も比較しやすいオブジェクトの同等関係を実装します。つまり、すべての参照値 xy に対して、このメソッドは xy が同じオブジェクトを参照する (x==y の値が true を返す) 場合にのみ true を返します。

パラメータ:
obj - 比較する参照オブジェクト
返り値:
このオブジェクトが obj 引数に指定したオブジェクトと同じである場合は true、同じではない場合は false
参照:
hashCode, Hashtable
 o clone
 protected native Object clone() throws CloneNotSupportedException
このオブジェクトと同じクラスのオブジェクトを新たに作成します。そして、新規オブジェクトの各フィールドに、このオブジェクトの対応するフィールドと同じ値を割り当てて、新規オブジェクトを初期化します。コンストラクタは呼び出されません。

Object クラスの clone メソッドはオブジェクトのクラスがクローンの作成を望む場合にのみクローンを作成します。インスタンスのクローンを作成できるクラスとは、Cloneable インタフェースの実装を宣言しているクラスです。

返り値:
このインスタンスのクローン
例外 : CloneNotSupportedException
オブジェクトのクラスが Cloneable インタフェースをサポートしていない場合。clone をオーバーライドするサブクラスも、インスタンスのクローンを作成することができない場合はこの例外をスローすることができる。
例外 : OutOfMemoryError
メモリが不足している。
参照:
Cloneable
 o toString
  public String toString()
オブジェクトの文字列表現を返します。一般に、toString メソッドはオブジェクトを「テキスト表現」の文字列を返します。結果は簡潔で人間が読みやすいような有益な情報であるべきです。すべてのサブクラスでは、このメソッドをオーバーライドすることをお勧めします。

Object クラスの toString メソッドは、オブジェクトの派生元のクラス名と、「@」という記号、オブジェクトのハッシュコードの符号なし16進表現から構成される文字列を返します。

返り値:
オブジェクトの文字列表現
 o notify
 public final native void notify()
このオブジェクトのモニタで待機中のスレッドを 1 つ再開します。スレッドは、いずれかの wait メソッドを呼び出すことによって、オブジェクトのモニタで待機します。

このメソッドを呼び出すのは、このオブジェクトのモニタを所有するスレッドでなければなりません。スレッドがオブジェクトのモニタの所有者になる方法は、次の 3 とおりがあります。

オブジェクトのモニタを所有できるスレッドは一度に 1 つだけです。

例外 : IllegalMonitorStateException
現在のスレッドが、このオブジェクトのモニタの所有者ではない
参照:
notifyAll, wait
 o notifyAll
 public final native void notifyAll()
このオブジェクトのモニタで待機中のすべてのスレッドを再開します。オブジェクトのモニタで待機します。スレッドは、いずれかの wait メソッドを実行することによってオブジェクトのモニタで待機します。

このメソッドを呼び出すのは、このオブジェクトのモニタを所有するスレッドでなければなりません。スレッドがオブジェクトのモニタの所有者になる方法については、 notify メソッドを参照してください。

例外 : IllegalMonitorStateException
現在のスレッドが、このオブジェクトのモニタの所有者ではない
参照:
notify, wait
 o wait
 public final native void wait(long timeout) throws InterruptedException
このオブジェクトの変化が別のスレッドによって通知されるまで待機します。

現在のオブジェクトはこのオブジェクトのモニタを所有していなければなりません。スレッドはこのモニタの所有権を解放し、次のいずれかの状態が発生するまで待機します。

スレッドはモニタの所有権を再度獲得するまで待機し、そのあと実行を再開します。

このメソッドを呼び出すのは、このオブジェクトのモニタを所有するスレッドだけでなければなりません。スレッドがオブジェクトのモニタの所有者になる方法については、 notify メソッドを参照してください。

パラメータ:
timeout - 最大待ち時間 (ミリ秒単位)
例外 : IllegalArgumentException
timeout の値が負である
例外 : IllegalMonitorStateException
現在のスレッドはオブジェクトのモニタを所有していない
例外 : InterruptedException
別のスレッドがこのスレッドを中断した
参照:
notify, notifyAll
 o wait
  public final void wait(long timeout,
                         int nanos) throws InterruptedException
このオブジェクトの変化を別のスレッドから通知されるまで待機します。

このメソッドは、引数を 1 つだけ受け取る wait メソッドに似ていますが、タイムアウトまでの待ち時間の量をより細かく制御することができます。

現在のスレッドは、オブジェクトのモニタを所有していなければなりません。スレッドはこのモニタの所有権を解放し、次のいずれかの状態が発生するまで待機します。

スレッドはモニタの所有権を再度獲得するまで待機し、そのあと実行を再開します。

このメソッドを呼び出すのは、このオブジェクトのモニタを所有するスレッドだけでなければなりません。スレッドがオブジェクトのモニタの所有者になる方法については、 notify メソッドを参照してください。

パラメータ:
timeout - 最大待ち時間 (ミリ秒単位)
nano - 追加の待ち時間 (ナノ秒単位で 0-999999 の範囲)
例外 : IllegalArgumentException
待ち時間の値が 負数または nano の値が 0-999999 の範囲外
例外 : IllegalMonitorStateException
現在のスレッドがこのオブジェクトのモニタを所有していない
例外 : InterruptedException
別のスレッドがこのスレッドを中断した
 o wait
  public final void wait() throws InterruptedException
このオブジェクトの変化が別のオブジェクトから通知されるまで待機します。

現在のスレッドはこのオブジェクトのモニタの所有者でなければなりません。スレッドはこのモニタの所有権を解放し、別のスレッドが notify メソッドまたはnotifyAll メソッドを呼び出してこのオブジェクトのモニタ上で待機するスレッドに通知を出すまで待機します。そのあと、スレッドはモニタの所有権を再度取得するまで待機してから実行を再開します。

このメソッドを呼び出すのは、このオブジェクトのモニタを所有するスレッドだけでなければなりません。スレッドがオブジェクトのモニタの所有者になる方法については、 notify メソッドを参照してください。

例外 : IllegalMonitorStateException
現在のスレッドがオブジェクトのモニタの所有者ではない
例外 : InterruptedException
別のスレッドがこのスレッドを中断した
参照:
notify, notifyAll
 o finalize
  protected void finalize() throws Throwable
ガーベージコレクションがそのオブジェクトに対する参照がもうないと判断したときに、ガーベージコレクタによって呼び出されます。サブクラスは finalize メソッドをオーバーライドして、システムリソースを破棄したり、その他の後処理を行うことができます。

finalize メソッドによって例外がスローされると、finalize メソッドの処理は停止されます。そうでない場合は無視されます。

Objectfinalize メソッドは何も行いません。

例外 : Throwable
[未記述です]

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス