面试重点:设计模式(二)——创建模式

      1.创建模式:简单工厂

        单例模式:

        ArticleDao接口:


public interface ArticleDao {
public void addArticle(String article) ;
public void delArticle(int id) ;
public void updateArticle(String article) ;
public void findArticle(int id) ;
}

ArticleDaoForMybatislmpl.java
public class ArticleDaoForMybatislmpl implements ArticleDao {
    @Override
    public void addArticle(String article) {

    }

    @Override
    public void delArticle(int id) {

    }

    @Override
    public void updateArticle(String article) {

    }

    @Override
    public void findArticle(int id) {

    }
}

 

   

 

       对于程序员来说,写代码比改代码容易

       为了符合迪米特原则,我们要创建工厂类,不然就如同下面的一样实例化接口,要实现所有方法。

public class User {
    public static void main(String[] args) {
        ArticleDao dao=new ArticleDao() {
            @Override
            public void addArticle(String article) {

            }

            @Override
            public void delArticle(int id) {

            }

            @Override
            public void updateArticle(String article) {

            }

            @Override
            public void findArticle(int id) {

            }
        };
    }
}

       工厂类

  ArticleDaoFactory:

          User类里面:   

     

         符合开闭原则和迪米特原则,但是如果再添加框架,就需要修改工厂的代码。这就是简单工厂的局限性

         本问题在下一篇随笔解决。



 

posted @ 2018-11-21 16:10  dark_Souls  阅读(190)  评论(0编辑  收藏  举报