Este artigo descreve o modelo de método de fábrica do Java Design Pattern. Compartilhe -o para sua referência, como segue:
O modelo de método de fábrica é usado com muita frequência e sempre pode ser visto em nosso desenvolvimento diário. Ele é definido como: Defina uma interface para criar um objeto, mas deixe a subclasse decidir qual classe instanciar. O método fabricado permite que uma classe adie a instanciação para as subclasses (defina uma interface para criar um objeto, permitindo que a subclasse decidir qual classe instanciar. Um método de fábrica é a instanciação de uma classe atrasada para sua subclasse.
Vantagens do Modelo de Método da Fábrica:
1. Bom encapsulamento e estrutura de código claro. Uma criação de objetos é uma restrição condicional. .
2. O modelo de método da fábrica tem excelente escalabilidade. Ao adicionar categorias de produtos, desde que você modifique adequadamente a categoria de fábrica específica ou expanda uma categoria de fábrica, você pode concluir a "mudança de alteração".
3. Categorias de produtos de bloqueio. Isso é muito importante. mudar. Como a instanciação de uma classe de produto é de responsabilidade da classe de fábrica, a geração específica do produto de um objeto de produto é determinada pela classe de fábrica.
4. O modelo de método de fábrica é uma estrutura de desacoplamento típica. . Os valores de alto nível do módulo precisam conhecer a classe abstrata do produto. O princípio da inversão de dependência e depende apenas da classe abstrata do produto.
O código comum para o padrão de método de fábrica é o seguinte:
// Classe de produto abstrato Public Resumo Class Produto {// Método público da classe de produto public void Method1 () {// Processamento da lógica de negócios} // Método abstrato public abstrato void Method2 ();}Pode haver várias categorias específicas de produtos, todas herdadas das categorias de produtos abstratos, o código -fonte é o seguinte:
// categoria de produto específico public class concreteproduct1 estende o produto {public void method2 () {// processamento de lógica de negócios}} public class concreteproduct2 estende o produto {public void method2 () {// Processamento de lógica de negócios}}}A classe de fábrica abstrata é responsável por definir a geração de objetos de produto, o código -fonte é o seguinte:
// Classe de fábrica abstrata Public Resumo Class Creator {/***Crie uma classe de produto cujos tipos de parâmetros de entrada podem ser definidos por você, geralmente string, enum, classe, é claro, pode estar vazio*/public abstrato <t estende o produto> T createprodu ct (classe <t> cls);}Como gerar um objeto de produto é implementado em classes de fábrica específicas, o código -fonte é o seguinte:
// classe de fábrica específica conctetecreator estende o criador {public <t estende o produto> t createproduct (classe <t> cls) {Product Product = null; );O método de chamada da aula de cena é o seguinte:
// classe de cena public client {public static void main (string [] args) {criador criador = new concreteCreator (); }A mudança de código geral é uma estrutura relativamente prática e fácil de estender, e os leitores podem se expandir de acordo com as necessidades reais do projeto.
Espero que este artigo seja útil para a programação Java de todos.