A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© \(^o^)/ 中级黑马   /  2014-4-16 23:20  /  843 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 \(^o^)/ 于 2014-4-18 13:21 编辑

用来操作线程的方法wait(), notify() ,notifyAll()为什么定义在了Object类中?

2 个回复

倒序浏览
因为锁要调用这几个方法, 而锁又可以是任意对象,既然是任意对象的话,那就肯定要定义在Object类中喽
回复 使用道具 举报
因为这些方法在操作同步线程中时,都必须要标识他们所操作线程只有的锁、 只有同一个锁上的被等待线程,可以被同一个锁上notify唤醒。 不可以对不同锁中的线程进行唤醒。 也就是说,等待和唤醒必须是同一个锁。 而锁可以是任意对象,所以可以被任意对象调用的方法定义object类中
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马