1700457322
1700457323
yellowHuman.getColor();
1700457324
1700457325
yellowHuman.talk();
1700457326
1700457327
}
1700457328
1700457329
}
1700457330
1700457331
人种有了,八卦炉有了,负责生产的女娲也有了,激动人心的时刻到来了,我们运行一下,结果如下所示。
1700457332
1700457333
—造出的第一批人是白色人种—
1700457334
1700457335
白色人种的皮肤颜色是白色的!
1700457336
1700457337
白色人种会说话,一般都是但是单字节。
1700457338
1700457339
—造出的第二批人是黑色人种—
1700457340
1700457341
黑色人种的皮肤颜色是黑色的!
1700457342
1700457343
黑人会说话,一般人听不懂。
1700457344
1700457345
—造出的第三批人是黄色人种—
1700457346
1700457347
黄色人种的皮肤颜色是黄色的!
1700457348
1700457349
黄色人种会说话,一般说的都是双字节。
1700457350
1700457351
哇,人类的生产过程就展现出来了!这个世界就热闹起来了,黑人、白人、黄人都开始活动了,这也正是我们现在的真实世界。以上就是工厂方法模式(没错,对该部分有疑问,请继续阅读下去)。
1700457352
1700457353
1700457354
1700457355
1700457357
设计模式之禅 8.2 工厂方法模式的定义
1700457358
1700457359
工厂方法模式使用的频率非常高,在我们日常的开发中总能见到它的身影。其定义为:
1700457360
1700457361
Define an interface for creating an object,but let subclasses decide which class to instantiate.Factory Method lets a class defer instantiation to subclasses.(定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。)
1700457362
1700457363
工厂方法模式的通用类图如图8-2所示。
1700457364
1700457365
1700457366
1700457367
1700457368
图8-2 工厂方法模式通用类图
1700457369
1700457370
在工厂方法模式中,抽象产品类Product负责定义产品的共性,实现对事物最抽象的定义;Creator为抽象创建类,也就是抽象工厂,具体如何创建产品类是由具体的实现工厂ConcreteCreator完成的。工厂方法模式的变种较多,我们来看一个比较实用的通用源码。
1700457371
[
上一页 ]
[ :1.700457322e+09 ]
[
下一页 ]