设计模式之简单工厂模式
方案:主要通过向工厂中传入不同的参数,工厂将返回相应的类的实例,用户无需了解实例是怎样创建的,但是,向工厂中传入的参数是确定的,也就是说工厂所能创建的类的实例是需要事先知道的,当需要添加一个新类的时候,需要新写一个类,修改factory的逻辑判断,同时也修改客服端。
适用于创建少量对象的工厂
参考代码如下
/**
*
*/
package com.design.simpleFactory;
/**
* @author Lei
* 动物类
*/
public abstract class AnimalObj {
private String animalName;
public AnimalObj(String name){
this.animalName=name;
}
/**
*动物运动行为
*/
public abstract void move();
public String getAnimalName() {
return animalName;
}
public void setAnimalName(String animalName) {
this.animalName = animalName;
}
}
package com.design.simpleFactory;
/**
* @author Lei
* 鸟类
*/
public class Bird extends AnimalObj {
public Bird(String name) {
super(name);
}
/**
* 鸟飞
* */
@Override
public void move() {
System.out.println("bird fly");
}
}
/**
*
*/
package com.design.simpleFactory;
/**
* @author Lei
* 人类
*/
public class People extends AnimalObj {
public People(String name) {
super(name);
}
/**
* 人走
* */
@Override
public void move() {
System.out.println("people walk");
}
}
/**
*
*/
package com.design.simpleFactory;
/**
* @author Lei
* 动物简单工厂
*/
public class AnimalFactory {
public static AnimalObj createAnimal(int animal) {
AnimalObj ani=null;
switch (animal) {
case 1:
ani = new Bird("bird");
break;
case 2:
ani = new People("people");
break;
}
return ani;
}
}
/**
*
*/
package com.design.simpleFactory;
/**
* @author Lei
* 测试类
*/
public class Test {
public static void main(String args[]){
AnimalObj bird=AnimalFactory.createAnimal(1);
AnimalObj people=AnimalFactory.createAnimal(2);
bird.move();
people.move();
}
}
分享到:
相关推荐
简单工厂模式是软件设计模式中的一种创建型模式,它提供了一种创建对象的最佳方式。在简单工厂模式中,一个工厂类负责创建所有相关的对象,而客户端只需要知道具体的产品类型,无需了解如何创建这些对象的细节。这种...
大话设计模式源代码之简单工厂模式 经典代码
简单工厂模式是软件设计模式中的一种基础模式,它在创建对象时起到了抽象和封装的作用,使得客户端无需关心具体对象的创建过程,只需要通过一个公共的工厂接口就能获取所需的对象。这种模式尤其适用于当系统中存在...
简单工厂模式是软件设计模式中的一种基础模式,它属于创建型模式,主要解决对象的创建问题,降低了系统与具体创建对象之间的耦合度。在这个模式中,有一个工厂类负责创建对象,客户端通过调用工厂类的特定方法来获取...
完成了,但感觉这也没啥特别的,程序界面黑布隆冬的,内部结构也是最最平常的面向对象,于是我应用了《大话设计模式》这本书中的第一个模式——简单工厂模式,看上去还不错。界面的话,也就是输出的语句变了,system...
### Java设计模式之简单工厂模式详解 #### 一、创建型模式概览 在软件工程领域,设计模式是一种被广泛采用的解决方案模板,用于解决在软件设计过程中遇到的常见问题。其中,创建型模式(Creational Pattern)专注...
深入了解 C# 设计模式之简单工厂模式 简单工厂模式是 C# 设计模式中的一种,它主要用于解决对象创建的问题,提供了一种简单的方式来创建对象。这种模式属于 Creational Pattern,主要用于对象的创建。 在简单工厂...
本文实例讲述了Python设计模式之简单工厂模式。分享给大家供大家参考,具体如下: 简单工厂模式(Simple Factory Pattern):是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 下面使用...
工厂模式分为三种主要类型:简单工厂模式、工厂方法模式和抽象工厂模式。 1. **简单工厂模式** 简单工厂模式是最简单的工厂模式实现,它提供一个静态方法或者类来创建对象,这个类通常被称为“工厂”。用户只需要...
简单工厂模式是一种创建型设计模式,它提供了一个静态方法来创建对象,而无需暴露创建逻辑。这个静态方法根据输入参数来决定返回哪个类的实例。这种方式将对象的创建与使用分离,使得代码更加简洁,易于理解和使用。...
在软件设计模式中,工厂模式是一组非常基础且实用的设计模式,主要分为简单工厂模式、工厂方法模式和抽象工厂模式。这些模式都是为了解决对象创建的问题,通过封装对象的创建过程,使得代码更加灵活,易于扩展和维护...
**Python3设计模式之简单工厂模式** 简单工厂模式是一种创建型设计模式,它提供一个创建对象的接口,但允许子类决定实例化哪一个类。在Python3中,我们可以利用面向对象编程特性来实现这一模式。 在上述代码中,...
简单工厂模式是一种创建型设计模式,它提供了一个创建对象的接口,但允许子类决定实例化哪一个类。这种模式使得客户端代码不必关心具体的产品实现,只需要知道如何通过工厂获取所需的对象即可。在C#中,简单工厂模式...
简单工厂模式是软件设计模式中的一种创建型模式,它提供了一种创建对象的最佳方式。在简单工厂模式中,一个工厂类负责创建所有相关的或者相互依赖的对象,无需客户端代码指定具体的类,而是通过工厂方法来创建实例。...