`

读《研磨设计模式》-代码笔记-简单工厂模式

阅读更多
声明:
本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/



package design.pattern;

/*
 * 个人理解:简单工厂模式就是IOC;
 * 客户端要用到某一对象,本来是由客户创建的,现在改成由工厂创建,客户直接取就好了
 */
interface IProduct {
	void desc();
}


class ProductImplA implements IProduct {
	public void desc() {
		System.out.println("Product A");
	}
}


class ProductImplB implements IProduct {
	public void desc() {
		System.out.println("Product B");
	}
}


class Factory {
	
	//可以把这个方法定义成static类型的,那Factory这个类就成为一个工具类了,称为静态工厂模式
	public IProduct createProduct(int type) {
		IProduct product = null;
		
		/*究竟要创建哪一类型的Product,一般有几种:
		 * 1.直接传递参数,像下面的代码那样
		 * 2.在properties文件里面配置要创建的类名(全类名,包括包名,以便反射),读取文件,得到类名,反射生成实例
		 * 3.根据数据库的参数创建
		 * 4.为不同的产品提供不同的方法:createProductA(); createProductB()...
		 */
		if (type == 1) {
			product = new ProductImplA();
		} else if (type == 2) {
			product = new ProductImplB();
		}
		return product;
	}
}


public class SimpleFactoryPattern {

	public static void main(String[] args) {
		Factory f = new Factory();
		int type = 1;
		IProduct product = f.createProduct(type);
		product.desc();

	}

}

0
3
分享到:
评论

相关推荐

    研磨设计模式-配套源代码

    这份压缩包可能包括了多种常见设计模式的实现,如单例模式、工厂模式、观察者模式、装饰器模式等,通过源代码的形式帮助开发者更好地理解和应用这些模式。 1. **单例模式**:确保一个类只有一个实例,并提供一个...

    研磨设计模式-配套源代码.7z

    《研磨设计模式》是一本深入探讨软件设计模式的书籍,其配套源代码包含了许多经典设计模式的实际应用示例。这些源代码可以帮助读者更直观地理解设计模式的原理和使用方法,进一步提升软件开发能力。 设计模式是软件...

    研磨设计模式-配套源代码.rar

    《研磨设计模式》是一本深入探讨软件设计模式的书籍,配套源代码是作者为了帮助读者更好地理解和应用书中介绍的设计模式而提供的实践示例。设计模式是软件开发中经过实践检验的、解决常见问题的模板,它为软件设计...

    研磨设计模式-配套源代码 UTF-8格式

    《研磨设计模式》是一本深入探讨软件设计原则与实践的经典书籍,其配套源代码提供了丰富的实例,帮助读者更好地理解和应用各种设计模式。这个UTF-8格式的压缩包包含了书中介绍的各种设计模式的实现,是学习和研究...

    研磨设计模式-陈臣.epub

    “1.1 设计模式是什么 1.1.1 什么是模式 从字面上理解,模,就是模型、模板的意思;式,就是方式、方法的意思。综合起来,所谓模式就是:可以作为模型或模板的方式或方法。... “研磨设计模式”。 iBooks.

    研磨设计模式--chjavach的博客文章

    本文将深入探讨五个关键的设计模式:单例模式、工厂方法模式、策略模式、命令模式和桥接模式,这些都是Java编程中常用且至关重要的设计原则。 首先,我们来看**单例模式**。单例模式确保一个类只有一个实例,并提供...

    研磨设计模式-陈臣.王斌.扫描高清版PDF

    设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。 使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;...

    研磨设计模式-陈臣pdf

    《研磨设计模式》完整覆盖GoF讲述的23个设计模式并加以细细研磨。初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,...

    研磨设计模式书-配套源代码(全)

    1:本源代码是《研磨设计模式》一书的配套源代码 2:每个模式的示例源代码放在一个单独的文件夹下,以该模式的英文名称命名 3:每个模式下分成多个example,按照书的示例顺序分别命名为example1、example2.........

    研磨设计模式-陈臣.mobi kindle版

    《研磨设计模式》完整覆盖GoF讲述的23个设计模式并加以细细研磨。初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,...

    研磨设计模式源码

    《研磨设计模式源码》是一份非常宝贵的资源,它提供了设计模式的实践代码,帮助开发者深入理解并应用这些模式。设计模式是软件工程中经过长期实践总结出来的一套通用解决方案,它们描述了在特定场景下如何解决常见...

    研磨设计模式 源代码

    源代码中可能会有`FactoryPattern`目录,包含简单工厂、工厂方法和抽象工厂模式的实现。 3. **观察者模式**(Observer):定义对象间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到...

    研磨设计模式-part2

    第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式(Prototype) 第10章 中介者模式(Mediator) 第11章 代理模式(Proxy) 第12章 观察者模式(Observer) 第13章 命令模式...

    研磨设计模式-part4

    第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式(Prototype) 第10章 中介者模式(Mediator) 第11章 代理模式(Proxy) 第12章 观察者模式(Observer) 第13章 命令模式...

    研磨设计模式-part3

    第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式(Prototype) 第10章 中介者模式(Mediator) 第11章 代理模式(Proxy) 第12章 观察者模式(Observer) 第13章 命令模式...

    研磨设计模式全部源代码

    1. 工厂模式:这是最简单的创建型设计模式,它提供了一种创建对象的最佳方式。工厂模式通过创建一个工厂类来生产特定类型的对象,而不是直接实例化对象,这样可以使代码更具灵活性。 2. 单例模式:这种模式确保一个...

    研磨设计模式带书签完整版228M.7z.001

    《研磨设计模式》完整覆盖GoF讲述的23个设计模式并加以细细研磨。初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,...

    研磨设计模式(完整带书签).part2.pdf

    第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式(Prototype) 第10章 中介者模式(Mediator) 第11章 代理模式(Proxy) 第12章 观察者模式(Observer) 第13章 命令模式...

    研磨设计模式 演示源代码

    "研磨设计模式 演示源代码"这个资源包含了对设计模式的详细解释和实例分析,旨在帮助学习者深入理解和应用这些模式。 1. **单例模式**:确保一个类只有一个实例,并提供一个全局访问点。在资源管理、缓存或者线程池...

    研磨设计模式[书签]

    创建型模式主要关注对象的创建过程,如单例模式、工厂方法模式和抽象工厂模式等,它们能够在不同的情况下提供合适的对象创建方式,降低代码之间的耦合度。结构型模式关注如何组合类和对象以实现更复杂的设计,如...

Global site tag (gtag.js) - Google Analytics