Conversando com um pessoal na sun, me deparei a esta pergunta.
Apesar da java.lang.Object não ter métodos abstratos, ela poderia ser abstrata, já que não há sentido instanciar Objects.
Ok, você pode falar que ela é legal para você utilizar como mutex e tal. Mas para isso, você poderia utilizar uma String!
E então, porque essa decisão da SUN? O Oziel, da procwork, disse que é uma decisão de OO, você decide isso, tem um moento que fica em aberto. Eu concordo, mas gostei da idéia de Object ser abstract!
Hm, Object e outros conceitos em Java sao de certo ponto “polemicos” entre a equipe, pelo que vejo por ai. Agora, digamos que fosse abstract, mudaria em algo? ou a ideia geral eh apenas estar em conformidade com os padroes e conteitos de OO? :?
usa-se quando se tem um trecho de codigo que pode ser executado concorrentemente e vc quer garantir que apenas uma thread por vez vai executar esse trecho
Object o = new Object();
synchronized(o) {
.....
}
Isso? Se for eh mais uma dessas coisas bizarras de nome q eu num sabia mas ja tive q fazer ahauhuhaeuhaehuae, q engracado…
No comeco eu fazia um metodo private synchronizado, o q era bem burrice pq ele nao sincronizava ometodo e sim a instancia… ai qdo me toquei fiz isso ae…