diff --git a/02.FactoryMethod/02.FactoryMethod.md b/02.FactoryMethod/02.FactoryMethod.md index e877a6c..cf465ae 100644 --- a/02.FactoryMethod/02.FactoryMethod.md +++ b/02.FactoryMethod/02.FactoryMethod.md @@ -17,17 +17,18 @@ - **抽象产品(AbstractProduct)**:所有产品的基类,提供产品类的公共方法 - **具体产品(ConcreteProduct)**:具体的产品类 工厂方法模式UML类图如下: -![avatar](.//1.Picture//工厂方法模式UML图.png) +![avatar](https://github.com/FengJungle/DesignPattern/blob/master/02.FactoryMethod/1.Picture/%E5%B7%A5%E5%8E%82%E6%96%B9%E6%B3%95%E6%A8%A1%E5%BC%8FUML%E5%9B%BE.png) # 3.工厂方法模式代码实例 考虑这样一个场景,如下图: -![avatar](.//1.Picture//工厂方法模式.png) +![avatar](https://github.com/FengJungle/DesignPattern/blob/master/02.FactoryMethod/1.Picture/%E5%B7%A5%E5%8E%82%E6%96%B9%E6%B3%95%E6%A8%A1%E5%BC%8F.png) ``` -Jungle想要进行户外运动,它可以选择打篮球、踢足球或者玩排球。和上一次的体育保管室不同,这次分别由篮球保管室、足球保管室和排球保管室,Jungle只需直接去相应的保管室就可以拿到对应的球!然后Jungle就可以愉快地玩耍了。 +Jungle想要进行户外运动,它可以选择打篮球、踢足球或者玩排球。和上一次的体育保管室不同,这次分别由篮球保管室、足球保管室和排球保管室. +Jungle只需直接去相应的保管室就可以拿到对应的球!然后Jungle就可以愉快地玩耍了。 ``` 对应的UML实例图如下图: -![avatar](.//1.Picture//工厂方法模式UML实例图.png) +![avatar](https://github.com/FengJungle/DesignPattern/blob/master/02.FactoryMethod/1.Picture/%E5%B7%A5%E5%8E%82%E6%96%B9%E6%B3%95%E6%A8%A1%E5%BC%8FUML%E5%AE%9E%E4%BE%8B%E5%9B%BE.png) ## 3.1.定义抽象产品类AbstractSportProduct,方法不提供实现 @@ -223,4 +224,4 @@ Jungle play Volleyball ## 适用环境: - 客户端不需要知道它所需要创建的对象的类; -- 抽象工厂类通过其子类来指定创建哪个对象(运用多态性设计和里氏代换原则) \ No newline at end of file +- 抽象工厂类通过其子类来指定创建哪个对象(运用多态性设计和里氏代换原则)