Olá a todos
gostaria de uma opnião sobre essa implememtação que fiz ai em baixo
sou iniciante em java e estou estudando classes genericas, quanto a questão dos generics não tenho nem uma duvida.
a questão é saber se essa implementação faz sentido.. sei que isso vai depender de uma melhor analise do problema envolvido, más num contexto mais generalizado..??
no caso ai se eu quiser criar outro tipo de pessoa basta eu implementar de TipoDePessoa.. com suas características especificas de cada tipo de pessoas
o que vocês acham disso se torna algo escalonavel??
é aquela velha historia das classes pessoas..
utilizei classe genéricas.. de uma olhada e opinem por favor .. qualquer opinião será bem vinda..
public class Pessoa<T extends TipoDePessoa> {
private T pessoa;
public Pessoa(T tipoDePessoa){
this.pessoa = tipoDePessoa;
}
public T getDadosPessoa(){
return pessoa;
}
}
public class PessoaFisica implements TipoDePessoa{
public String getCPF(){
return "CPF da Pessoa Fisica";
}
}
public class PessoaJurica implements TipoDePessoa {
public String getCNPJ(){
return " CNPJ da Pessoa Jurica";
}
}
public interface TipoDePessoa {
}
Teste
public class PessoaTest {
public static void main(String[] args) {
Pessoa<PessoaFisica> PessoaFisica = new Pessoa<PessoaFisica>(new PessoaFisica());
Pessoa<PessoaJurica> PessoaJuridica = new Pessoa<PessoaJurica>(new PessoaJurica());
String CPF = PessoaFisica.getDadosPessoa().getCPF();
String CNPJ = PessoaJuridica.getDadosPessoa().getCNPJ();
System.out.println("Pessoa Fisica: " + CPF + "\nPessoa Juridica" + CNPJ);
}
}