1
我已阅读Factory Method模式。设计后一个例子时遇到问题。工厂方法模式故障
该图案的最佳设计?任何人都可以给我任何建议?
AbstractProduct Creator
/ \ / \
Product1 Product2 Creator1 Creator2
AbstractProduct ? How to design Creator ?
/ | \
Product1 Product2 SubAbstractProduct
/ \
Product3 Product 4
感谢您的回答。但是如果Creator有一个方法:_AbstractProduct createProduct()_,那么当我使用_product = createProduct()_时,产品只是AbstractProduct类型,而不是SubAbstractProduct,产品不能使用SubAbstractProduct中的任何扩展方法。 –
好的,但是如果SubAbstractProduct有一个AbstractProduct没有的方法,例如* moreMethod()*。虽然* product *只是AbstractProduct,所以如果它想使用* moreMethod()*,我必须输入cast。 –