Beleza!!! A discusao vai esquentar! Todo mundo entendeu?
Aqui comeca a aparecer o porque do conceito de interfaces!
>Eu, Ricardo Munhoz Santiago sou uma pessoa física, que me formei médico e
>venho trabalhar neste hospital. Entro então como Medico. No meio do ano,
>fico doente e resolvo me internar neste mesmo hospital. Para ter uma ficha
>clinica preciso ser cadastrado como paciente. Já houve duplicação dos dados
>da classe Pessoa Fisica.
Desculpa, mais nao entendi porque teria duplicacao ja que se pesquiso no
cadastro pelas pessoas fisicas vou te achar (a generalizacao e' justamente
pra evitar a duplicacao de informacao). A tua propria frase e incompativel.
Na hora de criar uma nova instancia do Paciente que implica criar uma nova
instancia da Pessoa Fisica descobriria a duplicacao.
Mais entendi a tua preocupacao.
A heranca e sempre uma coisa que de uma forma ou de outra me amarra
bastante. Preciso de algum mecanismo que me permita escapar dela.
Existem dois mecanismos basicos : heranca multipla e interfaces.
Ja que estamos na lista de Java e pra nao fugir do assunto, vamos a usar as
interfaces.
Que tal se definimos duas interfaces : IPaciente e IMedico (alguem me
indique a sintaxe correta, por favor) e aplicamos elas na classe pessoa
fisica? Sera melhor que a associacao? Porque?
O sera melhor deixar como associacao mesmo?
A pergunta ta no ar...
Um abraco, Pablo.
-----Original Message-----
From: Ricardo Santiago <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Date: Thursday, January 13, 2000 8:15 AM
Subject: Re: [SouJava-J] POO
>>Entao a heranca que vamos ter pode ser :
>>Pessoa -> Pessoa Fisica -> Paciente
>> -> Medico
>>Pessoa ->Pessoa Juridica-> Convenio
>Tenho apenas uma consideração neste respeito... Geralmente não é
>recomendável associar por herança um papel (role) que possa mudar. Vou
>exemplificar.
>Quando vamos falar de um papel desempenhado, a melhor coisa é usar de
>associação, não herança.
>No caso, a classe Medico deve estar associada a uma pessoa fisica, e da
>mesma forma a classe Paciente.
>Este é o típico caso onde o teste "é uma" pode enganar!
>Podemos dizer que um paciente "é uma" pessoa física, mas no fundo, paciente
>é apenas o estado em que a pessoa se encontra durante uma visita ao
>hospital, é só o papel que ela desempenha.!
just my 2 cents!
Ricardo Munhoz Santiago (CPM Sistemas)
Sun Certified Programmer for the JAVA 2 Platform
Come and get some !!!
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
---------------------------------------------------------------------
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
---------------------------------------------------------------------