Objectクラスのメソッド
オブジェクトは、任意のクラスオブジェクト継承デフォルトのすべてのクラスの親クラスです。どのような方法を達成するために、最終的にObjectクラス?
(1)クローン方法
唯一Cloneableインタフェースは、CloneNotSupportedExceptionを投げるそうでない場合は、このメソッドを呼び出すことができます達成するために、浅いコピーの目的を達成する保護方法。
(2)getClassメソッド
最後の方法、実行時の型を取得します。
(3)のtoStringメソッド
このプロセスは、一般的に、サブクラスカバーを持っている以上使用しています。
(4)ファイナライズ方法
リソースを解放するための方法。メソッドが呼び出されたとき、それは判断できないので、それはほとんど使用されません。
(5)法に等しいです
このメソッドは、非常に重要な方法です。一般的に等しいと==同じではありませんが、オブジェクトに2が同じです。サブクラスは、一般的に、このメソッドをオーバーライドする必要がありました。
(6)hashCode方法
ハッシュ・ルックアップに使用される方法は、一般的にhashCodeメソッドをオーバーライドするために必要なequalsメソッドを書き換えます。このメソッドは、ハッシュ関数をコレクションの一部で使用されています。
一般的には、obj1.equals(OBJ2)== trueを満たす必要があります。あなたは()== obj2.hashCode()のコードをobj1.hash-起動することができますが、必ずしも同じhashCodeを満たすには、相当しません。しかし、効率を向上させるために、我々は、上記の2つの条件がほぼ同等である作ってみる必要があります。
(7)待機メソッド
待ち時間は、オブジェクトのロックの現在のスレッドを待機させることであり、現在のスレッドは、あるオブジェクトのロックを持っているオブジェクトの所有者でなければなりません。ロックが取得されるか、または中断されるまで()メソッドを待つを待ちます。待ち時間(長いタイムアウト)ロックが所定時間内に戻り得られなかった場合、タイムアウト間隔を設定します。
睡眠にこの方法を現在のスレッドを呼び出した後、次のイベントが発生するまで。
(1)他のスレッドがオブジェクトの通知メソッドを呼び出します。
(2)他のスレッドがオブジェクトののnotifyAllメソッドを呼び出します。
(3)他のスレッドの呼び出しはこのスレッド割り込み割り込み。
(4)までの時間間隔。
このとき、スレッドは、それが中断された場合は、InterruptedExceptionある例外をスローし、スケジュールすることができます。
(8)メソッドを通知します
この方法は、対象物の上に待機しているスレッドを目覚めさせます。
(9)のnotifyAllメソッド
このメソッドは、オブジェクトを待っているすべてのスレッドをウェイクアップします。