DEV Community

Cover image for Métodos de Fábrica Estáticos em Java
GlauberBalsani
GlauberBalsani

Posted on

Métodos de Fábrica Estáticos em Java

Um dos padrões de design mais úteis e comuns em Java é o método de fábrica estática. Este padrão é amplamente discutido no livro “Java Efetivo” de Joshua Bloch.

O que é um Método de Fábrica Estático?

Um método de fábrica estático é um método estático que retorna uma instância da classe. Este método é usado como uma alternativa ao construtor da classe. A principal vantagem dos métodos de fábrica estáticos é que, ao contrário dos construtores, eles têm nomes. Isso pode tornar o código mais legível e expressivo.

Exemplo de Código

public class Carro {
    private String marca;
    private String modelo;

    public Carro(String marca, String modelo) {
        this.marca = marca;
        this.modelo = modelo;
    }
}
Enter fullscreen mode Exit fullscreen mode

Para criar uma nova instância de Carro, normalmente usaríamos o construtor:

Carro carro = new Carro("Toyota", "Corolla");
Enter fullscreen mode Exit fullscreen mode

Agora, vamos adicionar um método de fábrica estático à nossa classe Carro, para isso vamos deixar o construtor padrão como private.

private Carro(String marca, String modelo) {
        this.marca = marca;
        this.modelo = modelo;
    }
Enter fullscreen mode Exit fullscreen mode
public static Carro criarToyotaCorolla() {
    return new Carro("Toyota", "Corolla");
}
Enter fullscreen mode Exit fullscreen mode

Agora podemos criar uma nova instância de Carro usando nosso método de fábrica estático:

Carro carro = Carro.criarToyotaCorolla();
Enter fullscreen mode Exit fullscreen mode

Como você pode ver, o código se torna mais legível e expressivo com o uso do método de fábrica estático e também mais acessar o construtor padrão da própria classe

Top comments (0)