Padrão Factory

5 respostas
V

Estou com uma dúvida de implementação deste padrão. Tenho uma classe pessoa e outras subclasses, como funcionário e aluno. E cada uma destas subclasses têm no mínimo dois construtores com suas implementações. Como implemento isto neste padrão? Já fiz algo parecido, mas as classes só têm o construtor padrão sem parâmetros. A minha dúvida é de como implementar com construtores com parâmetros.

5 Respostas

J

Algo assim?

public class Pessoa {

}

public interface PessoaFactory {
   public Pessoa makePessoa();
}

public class PessoaTipo1 extends Pessoa {
   public PessoaTipo1(String parametro) {

   }
}

public class Tipo1PessoaFactory implements PessoaFactory {
   public Pessoa makePessoa() {
      return new PessoaTipo1("abc");
   }
}
PessoaFactory factory = new Tipo1PessoaFactory();
Pessoa pessoa = factory.makePessoa();
V

Mas onde passo o parâmetro no momento de criação do objeto?

V

Mas onde passo o parâmetro no momento de criação do objeto?

V

E se a classe Pessoa tiver várias implementações de construtores?

Exemplo:

class Pessoa{
      Pessoa(int codigo){

      }
      Pessoa(int codigo, String nome){

      }
}
rodrigoy

Qualquer solução que for colocada aqui sem ter os requisitos do que você espera das “Pessoas” é mera especulação. Talvez você não precise de factories, nem de herança e talvez nem mesmo o sistema.

Criado 27 de maio de 2009
Ultima resposta 28 de mai. de 2009
Respostas 5
Participantes 3