一、多态1.1、多态概念定义:某一类事物的多种存在形态。 例:动物中猫,狗。 猫这个对象对应的类型是猫类型:猫 x = new 猫(); 同时猫也是动物中的一种,也可以把猫称为动物:动物y = new 猫(); 动物是猫和狗具体事物中抽取出来的父类型。 父类型引用指向了子类对象。 体现...
分类:
其他好文 时间:
2015-09-13 00:58:15
阅读次数:
239
1.????简单工厂模式 1.1 概述 ? ? 又叫静态工厂方法模式,它定义一个具体的工厂类负责创建一些类的实例。 1.2 优点 ? ? 客户端不需要在负责对象的创建,从而明确了各个类的职责。 1.3 缺点 ? ? 这个静态...
分类:
编程语言 时间:
2015-09-12 20:32:27
阅读次数:
216
抽象工厂模式(Abstract Factory),提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 所有在用简单工厂的地方,都可以考虑用反射技术来去除switch或if,解除分支判断带来的耦合。Demo: interface IUser { void ...
分类:
其他好文 时间:
2015-09-08 18:30:41
阅读次数:
144
《大话设计模式》简单工厂模式的实现,用VS2010的MFC实现程序。客户端界面如下:客户端的实现如下: 1 void CFactoryDesignDemoDlg::OnBnClickedOk() 2 { 3 // TODO: 在此添加控件通知处理程序代码 4 UpdateData(t...
分类:
其他好文 时间:
2015-09-06 21:35:18
阅读次数:
174
一、引言在上一专题中介绍了工厂方法模式,工厂方法模式是为了克服简单工厂模式的缺点而设计出来的,简单工厂模式的工厂类随着产品类的增加需要增加额外的代码),而工厂方法模式每个具体工厂类只完成单个实例的创建,所以它具有很好的可扩展性。但是在现实生活中,一个工厂只创建单个产品这样的例子很少,因为现在的工厂都...
分类:
其他好文 时间:
2015-09-05 19:21:43
阅读次数:
238
一、引言这个系列也是自己对设计模式的一些学习笔记,希望对一些初学设计模式的人有所帮助的,在上一个专题中介绍了单例模式,在这个专题中继续为大家介绍一个比较容易理解的模式——简单工厂模式。二、简单工厂模式的介绍说到简单工厂,自然的第一个疑问当然就是什么是简单工厂模式了? 在现实生活中工厂是负责生产产品的...
简单工厂模式:就是店---很多糕点,你需要通过工厂来生成。目的是为了减少代码,先写一个父类,然后让子类继承这个父类,然后在写一个工厂类,根据switch来调用不同的子类。 测试的时候,直接调用工厂类即可。 直接上代码: 下面的算法是一个 计算器的实现: using System; using Sys...
分类:
其他好文 时间:
2015-09-05 16:13:57
阅读次数:
132
书上原版的是C#代码我比较熟悉java,写的是java代码。package sampleFactory;public class Operation { protected double _numberA = 0; protected double _numberB = 0; pr...
分类:
其他好文 时间:
2015-09-01 16:51:42
阅读次数:
271
工厂模式和简单工厂模式的比较:
简单工厂模式把创建哪个运算类的对象放在工厂类中实现,也就是放在低层模块中实现;从而客户端在需要创建对象时仅仅需要给工厂传入一个key就能获取想要的对象。但当运算体系需要扩展的时候,就需要在工厂中增加新对象的判断,从而破坏了“封闭修改”的原则。
工厂模式由于抽象出了一个工厂父类,并且每一运算子类都有一个专门创建该子类对象的工厂子类,因此在增加运算子类的时候,工厂类不需要修改任何代码,只需要增加一个工厂子类即可。但客户端就需要给判断究竟给工厂父类创建哪个工厂子类对象。...
分类:
其他好文 时间:
2015-09-01 10:45:53
阅读次数:
215
1. 简单工厂模式在阎宏博士的《JAVA与模式》一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。先放图再解释。下图一是从《大话设计模式》中摘出来的。问题是:...
分类:
其他好文 时间:
2015-08-31 19:09:23
阅读次数:
241