意图

定义一个用于创建对象的接口,让子类决定实例化哪一个类。 Factory Method使一个类的实例化延迟到其子类。

 

上文中一共有两句话,前一句没有问题,后一句就没有办法理解了:一个类将它自己的示例话延迟到子类是什么意思呢?

 

解决的办法还是看原文。

 

Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.

 

单从翻译的角度来讲,《设计模式》书中的翻译并没有错。但是作者认为:包含英语原文在内,都存在指代不明的问题。于是作者斗胆对包含大师大师表述在内的内容进行调整,更加准确的说法应该是:

 

Factory Method使一个类的实例化另外一个类的动作延迟到其子类。

 

作者一句话

 

夏休结束,文章继续!

 

注:

 

本文中蓝色粗体文字都引自《设计模式》一书。

 

觉得本文有帮助?请分享给更多人。

阅读更多更新文章,请扫描下面二维码,关注微信公众号【面向对象思考】

Aha!设计模式(20)-工厂方法(1)_设计模