DEV Community

Paula Santana
Paula Santana

Posted on • Edited on

11 1

Java Efetivo Essencial - Static Factory

Prefira utilizar métodos static Factory em vez de contrutores

Esta é uma série baseada no entendimento de tópicos relacionados ao livro com foco no resumo.

Porquê

Ter os contrutores privados e utilizar um método estático como fábrica para criar seu objeto garante que apenas a classe saberá como criar o objeto, evitando problemas futuros. Podemos perceber que muitas classes do Java utilizam essa abordagem.

*Principais Vantagens *

  • Nome e assinatura do método mais claro do que utilização direta do construtor;
  • Permite a reutilização de objetos evitando que se crie sempre uma nova instância do objeto;
  • Pode retornar um objeto de qualquer subtipo do próprio tipo de retorno( classes que implementam a mesma interface);

Desvantagens

  • Classes sem construtores públicos ou protegidos não podem ter subclasses;
  • Acabam sendo difíceis de serem encontrados pelos programadores;
  • Dependendo da biblioteca que você utilize de banco de dados ou conversão de dados não irá funcionar sem construtor publico;

*Nomes comuns para métodos static factory *

  • from
  • of
  • valueOf
  • create
  • getInstance
  • getType

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs