Vamos por partes. Um contato sempre será tudo que uma pessoa é? Terá sempre todos os atributos (por exemplo, se quero cadastrar um contato de um cliente, irei exigir o cpf deste contato?).
Creio que esta relação de herança seja um exagero (salvo se o sistema for uma rede social e o contato simbolizar um amigo).
E, independente da relação que haja entre duas classes e uma superclasse em comum, elas podem ter outras relações entre elas, como a composição.
jv.nicocelli
Bom dia drsmachado,
No meu caso o contato sempre será uma pessoa.
Para ser mais claro, o sistema é para uma pizzaria, onde o cliente terá uma pontuação acumulativa por compra.
Dessa forma, é necessário que o pedido seja feito para o titular, independente de quem ligar, para que seja gerada a sua pontuação.
Por exemplo: Eu sou o Cliente(Titular), porém a minha esposa(Contato) poderá ligar para fazer um pedido.
De qualquer forma você já respondeu a minha dúvida, já que as classes podem ter relações entre elas.
Obrigado.
M
Mathe
nicocelli:
Bom dia Pessoal,
Estou desenvolvendo uma aplicação e me deparei com a seguinte situação, imaginem o seguinte senário:
Tenho uma super classe chamada Pessoa;
Como subclasse da classe Pessoa estão as classes Cliente(PF) e Contato.
Neste senário, o cliente TEM UM Contato, porém o Objeto contato está na mesma árvore de herança que o Cliente.
Ai eu pergunto à vocês, isto é possível?
Classe endereço também vai na mesma onda…
drsmachado
Na realidade, não vejo essa necessidade.
Contato pode ser uma única String, representando o nome da pessoa.
publicclassPessoa{}//publicclassCliente{privateList<String>contatos;//demais atributos//gets e sets}
Pois, se por acaso o titular for morar em outra cidade temporariamente, as pessoas não participam da promoção?