の オブジェクトクラス デフォルトでは、Java のすべてのクラスの親クラスです。つまり、Javaの最上位クラスです。
Object クラスは、型が不明なオブジェクトを参照する場合に便利です。親クラス参照変数が子クラス オブジェクトを参照できることに注意してください (アップキャストとして知られています)。
例を挙げてみましょう。オブジェクトを返す getObject() メソッドがありますが、これは Employee、Student などの任意の型にすることができ、オブジェクト クラス参照を使用してそのオブジェクトを参照できます。例えば:
Object obj=getObject();//we don't know what object will be returned from this method
Object クラスは、オブジェクトの比較、オブジェクトの複製、オブジェクトの通知など、すべてのオブジェクトに共通の動作を提供します。
オブジェクトクラスのメソッド
Object クラスは多くのメソッドを提供します。それらは次のとおりです。 |
方法 | 説明 |
---|---|
パブリック最終クラス getClass() | このオブジェクトの Class クラス オブジェクトを返します。さらに、Class クラスを使用して、このクラスのメタデータを取得できます。 |
public int hashCode() | このオブジェクトのハッシュコード番号を返します。 |
public booleanquals(Object obj) | 指定されたオブジェクトとこのオブジェクトを比較します。 |
protected Object clone() が CloneNotSupportedException をスローする | このオブジェクトの正確なコピー (クローン) を作成して返します。 |
パブリック String toString() | このオブジェクトの文字列表現を返します。 |
パブリック最終無効通知() | 単一スレッドを起動し、このオブジェクトのモニターで待機します。 |
public Final void NoticeAll() | すべてのスレッドを起動し、このオブジェクトのモニターで待機します。 |
public Final void wait(long timeout)throws InterruptedException | 現在のスレッドは、別のスレッドが通知する (notify() または NoticeAll() メソッドを呼び出す) まで、指定されたミリ秒間待機します。 |
publicfinal void wait(long timeout,int nanos)はInterruptedExceptionをスローします | 現在のスレッドは、別のスレッドが通知する (notify() または NoticeAll() メソッドを呼び出す) まで、指定されたミリ秒およびナノ秒待機します。 |
public Final void wait()throws InterruptedException | 別のスレッドが通知する (notify() メソッドまたは NoticeAll() メソッドを呼び出す) まで、現在のスレッドを待機させます。 |
protected void Finalize()throws Throwable | オブジェクトがガベージ コレクションされる前に、ガベージ コレクターによって呼び出されます。 |
これらの方法については、次の章で詳しく学習します。