использование объекта o = новый объект () - PullRequest
4 голосов
/ 20 марта 2011

Я использовал -

Object o = new Object(); 

для синхронизации потоков, и это полезно, потому что при закрытом объекте блокировки инкапсулируется блокировка, так что клиентский код не может ее получить, но не знает другого использования этого.
Каковы другие причины того, что класс Object не является абстрактным? В какой другой ситуации я могу использовать приведенный выше код?

1 Ответ

3 голосов
/ 20 марта 2011

Основной практической полезностью простого создания универсального объекта является использование его возможностей блокировки (например, wait() и notify()).Но это может быть то, что вы называете «отказом в обслуживании», так как использование этих методов может помочь в управлении потоками и потенциально в защите DoS.(но это действительно специфично для приложения и не присуще цели этих методов в Object)

Причина (ы), почему Object не является абстрактным, уже подробно обсуждается здесь:

Почему java.lang.Object не является абстрактным?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...