Java工厂模式分为三种
1、简单工厂模式(又叫静态工厂模式)
代码:
package simplefactory; public interface Person { public void say(); }
package simplefactory; public class Chinese implements Person{ public void say() { System.out.println("I am Chinese."); } }
package simplefactory; public class Japanese implements Person { public void say() { System.out.println("I am Japanese."); } }
package simplefactory; public class PersonCreator { public Person createPerson(String type) { if (type.equals("chn")) { return new Chinese(); } if (type.equals("jpn")) { return new Japanese(); } return null; } }
package simplefactory; public class Test { public static void main(String[] args) { PersonCreator pc = new PersonCreator(); pc.createPerson("chn").say(); pc.createPerson("jpn").say(); } }
2、抽象工厂模式
代码:
package factorymethod public abstract class AbstractFactory { public abstract Person create(); }
package factorymethod; public class Chinese extends Person{ public void say() { System.out.println("I am Chinese."); } }
package factorymethod; public class Japanese extends Person { public void say() { System.out.println("I am Japanese."); } }
package factorymethod; public interface AbstractFactory { public Person create(); }
package factorymethod; public class ChineseFactory implements AbstractFactory { public Person create() { return new Chinese(); } }
package factorymethod; public class JapaneseFactory implements AbstractFactory { public Person create() { return new Japanese(); } }
package factorymethod; public class Test { public static void main(String[] args) { ChineseFactory cf = new ChineseFactory(); cf.create().say(); JapaneseFactory jf = new JapaneseFactory(); jf.create().say(); } }
3、抽象工厂模式
代码:
package abstractfactory; public interface Person { public void say(); }
package abstractfactory; public class Chinese implements Person{ public void say() { System.out.println("I am Chinese."); } }
package abstractfactory; public class Japanese implements Person { public void say() { System.out.println("I am Japanese."); } }
package abstractfactory; public abstract class AbstractFactory { public abstract Chinese createChinese(); public abstract Japanese createJapanese(); }
package abstractfactory; public class DefaultFactory extends AbstractFactory{ public Chinese createChinese() { return new Chinese(); } public Japanese createJapanese() { return new Japanese(); } }
package abstractfactory; public class Test { public static void main(String[] args) { AbstractFactory af = new DefaultFactory(); af.createChinese().say(); af.createJapanese().say(); } }
相关推荐
Java工厂模式是一种设计模式,属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,当创建对象时,我们不会对客户端暴露创建逻辑,而是引用一个共同的接口来指向新创建的对象。这种模式使得系统在不指定...
Java工厂模式是面向对象设计模式中的一个重要概念,它提供了一种创建对象的最佳方式。在工厂模式中,我们创建对象时不直接实例化具体类,而是通过一个接口或者抽象类来间接创建。这种模式的核心在于将对象的创建过程...
java工厂模式试学教程(视频) java工厂模式试学教程(视频)
"设计模式之java工厂模式"是关于如何优雅地创建对象的一种经典设计模式,它属于创建者模式类别。创建者模式主要关注对象的创建,而工厂模式则在其中扮演着重要角色,因为它提供了一种抽象的方式来创建对象,从而使...
例题简单的阐述了Java工厂模式的概念,有利于读者更好地了解Java工厂模式
Java 工厂模式 Java 工厂模式是一种创建型设计模式,旨在提供一种统一的接口来创建对象。该模式主要有三种形式:简单工厂模式、工厂方法模式和抽象工厂模式。这些模式从上到下逐步抽象,并且更具一般性。 一、引子...
在软件设计模式中,工厂模式是一种非常基础且实用的创建型模式。它的主要目的是提供一个创建对象的接口,隔离了具体类的实例化过程,使得客户端可以无须知道所创建的对象的具体类,只需要知道它是从某个特定的工厂来...
Java工厂模式是一种设计模式,属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,当创建对象时,我们不会对客户端暴露创建逻辑,而是引用一个共同的接口来指向新创建的对象。这种模式的主要优点是隔离...
Java工厂模式是一种设计模式,主要用于解决对象创建的问题。在编程中,当系统无法预见需要创建哪种类型的实例,或者系统不应依赖于对象如何被创建、组合和表达的细节时,工厂模式是一个很好的选择。 简单工厂模式是...
Java工厂模式是面向对象设计模式中的一个核心模式,它提供了一种创建对象的最佳方式。在工厂模式中,当客户端需要创建一个对象时,它只需要指定所要创建的对象的类名,而无需知道具体的创建逻辑。这样,客户端与具体...
JAVA工厂模式.pptJAVA工厂模式.pptJAVA工厂模式.pptJAVA工厂模式.pptJAVA工厂模式.pptJAVA工厂模式.pptJAVA工厂模式.ppt
本文将深入探讨Java中的工厂模式,包括基本的工厂模式、抽象工厂模式以及工厂方法模式。 **工厂模式**:工厂模式的核心思想是提供一个创建对象的接口,但让实现这个接口的类来决定实例化哪一个类。这样,客户端无需...
以下是关于JAVA设计模式中提及的四种模式——工厂模式、代理模式、迭代器模式以及责任链模式的详细说明。 1. **工厂模式**:工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,当创建...
Java工厂模式是一种常用的设计模式,它是创建型设计模式的一种,主要解决对象创建过程中复杂的实例化逻辑,使得代码更加模块化,降低了系统耦合性。在Java编程中,工厂模式经常被用于封装对象的创建过程,使得客户端...
### Java工厂模式—简单工厂模式 #### 一、引言 简单工厂模式并不是GoF设计模式之一,但它作为设计模式的基础,在实际项目中被广泛使用。简单工厂模式的主要目的是将对象的创建与对象的使用分离,使代码更加灵活,...
JAVA工厂模式工厂方法模式.pdf
java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式...
下面我们将详细探讨这三种工厂模式在Java中的实现。 **1. 简单工厂模式** 简单工厂模式是最早期的工厂模式形式,它通过一个静态工厂方法来创建对象。在Java中,我们定义一个工厂类,包含一个静态方法,根据传入的...
Java工厂模式是一种设计模式,它是创建型模式的一种,主要用于封装对象的创建过程,提供一个统一的接口,使得客户端代码在使用具体产品时无需关注产品是如何被创建的。工厂模式的核心思想在于“将对象的创建与使用...
**JAVA工厂模式** Java工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,当我们创建对象时,...Java工厂模式是软件工程中常用的设计模式之一,对于理解和应用面向对象设计原则至关重要。