Oi Frank

Mas nenhum desses argumentos impede da classe Object ser abstrata

O paradigma OO diz tambem que voce deve definir uma classe abstrata quando voce nao 
quer instancias dessa 
classe. e quase ninguem quer instancias da classe Object, soh das subclasses.

Voce disse que nao ha delegacao de tarefas. Mas soh os waits, notifies e getClass sao 
FINAL (alias, sao nativos 
e os outros waits delegam) no java lang Object.  todos os outros metodos sao _super_ 
comuns de serem 
sobreescritos, isto eh, delegando a chamada. 

Ao meu ver, isso eh mais motivo de ser abstrata do que concreta. Para que ser concreta 
se voce nao vai 
instancia-la? (sem contar utilizacao como objetos de tag e mutexes)

valeu!

======================
Paulo Eduardo Azevedo Silveira
Grupo de Usuários Java
http://www.guj.com.br/


On Thu, 03 Oct 2002 14:55:29 -0300, Frank Inoue <[EMAIL PROTECTED]> escreveu :

> De: Frank Inoue <[EMAIL PROTECTED]>
> Data: Thu, 03 Oct 2002 14:55:29 -0300
> Para: [EMAIL PROTECTED]
> Assunto: Re: [java-list] java.lang.Object, porque nXo abstract?
> 
> 
> Paulo,
>     Acho que a explicação esta no próprio paradigma OO que define 
> componentes abstratos como entes que delegam alguma tarefa a ser 
> implementado em suas subclasses e dentro da linguagem Java a classe 
> java.lang.Object  é sozinho um componente completo, não há delegação de 
> tarefas.
>     Object  quer dizer componente de software, e isto implica as 
> seguintes funcionalidades:
>         - como fazer copia deste componente (clone);
>         - como comparar dois elementos pertencentes a classe(equals);
>         - como retira-lo da memória (finalize)
>         - qual  o tipo da classe esta instanciada no objeto em tempo de 
> execução(getClass);
>         -  numero de identificação em tempo de execução (hashcode)
>         -  mensagem de que ele liberou um recurso compartilhado (notify, 
> notityAll), usado em threads
>         -  nome do objeto em tempo de execução(toString), que por padrão 
> é o nome da classe instanciada + '@' + hashcode,
>             este método deve ser sobrescrito :  Objeto do tipo 
> Aluno.toString() deve retornar RA-Nome do Aluno
>         - mensagem para esperar por um recurso compartilhado(wait), 
> usado em threads
> obs: Todas as classes herdam de java.lang.Object implicitamente quando 
> não declaradas explicitamente.
> 
> 
> Frank
> 
> Paulo Silveira wrote:
> 
> >Oi pessoal!
> >
> >Uma vez alguem me perguntou, e eu não soube dar um motivo 100%:
> >
> >"Porque a java.lang.Object não é abstract"?
> >
> >Ela poderia perfeitamente ser abstract, já que não é preciso ter métodos abstratos 
>para a classe ser 
abstrata.
> >
> >Você poderia ainda se referenciar a Objects, criar array de Objects e tudo mais.
> >
> >A única coisa que você não poderia fazer, seria instanciar Objects. A única 
>utilidade de instanciar Objects, a 
meu 
> >ver, é utilizar como objetos de tag, ou como mutex (declara uns Objects estáticos e 
>da syncrhinized neles!). 
Mas 
> >pra isso basta você criar uma inner classe bem inutil, só pros mutexes e coisas do 
>gênero.
> >
> >Existe alguma coisa que faria o java.lang.Object precisar ser concreta? Ou foi 
>apenas uma decisão de 
> >implementação?
> >
> >======================
> >Paulo Eduardo Azevedo Silveira
> >Grupo de Usuários Java
> >http://www.guj.com.br/
> >
> >
> >------------------------------ LISTA SOUJAVA ---------------------------- 
> >http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
> >dúvidas mais comuns: http://www.soujava.org.br/faq.htm
> >regras da lista: http://www.soujava.org.br/regras.htm
> >historico: http://www.mail-archive.com/java-list%40soujava.org.br
> >para sair da lista: envie email para [EMAIL PROTECTED] 
> >-------------------------------------------------------------------------
> >
> >  
> >
> 
> 
> 


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a