Objectでwait、notify、notifyAllが定義されているのはなぜですか?

これはデザイン関連の問題であり、ユビキタスであるが不合理に思われる既存のシステムやものに対するインタビュアーの見解を調べます。これらの質問に答えるときは、これらのメソッドをObjectクラスに配置することが理にかなっている理由と、それらをThreadクラスに配置しない理由を説明する必要があります。明らかな理由は、JAVAによって提供されるロックは、スレッドレベルではなくオブジェクトレベルにあるためです。各オブジェクトには、スレッドによって取得されるロックがあります。スレッドがロックを待つ必要がある場合は、オブジェクトのwait()メソッドを呼び出すのが理にかなっています。wait()メソッドがThreadクラスで定義されている場合、どのロックがスレッドを待っているかは明らかではありません。簡単に言えば、wait、notify、notifyAllはロックレベルの操作であるため、ロックはオブジェクトに属しているため、これらはObjectクラスで定義されます。
————————————————
元のリンク:https://blog.csdn.net/pulusite/java/article/details/82287462

おすすめ

転載: www.cnblogs.com/breakingbrad/p/12711800.html
おすすめ