面试重点:设计模式——工厂方法
Posted lzy321
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试重点:设计模式——工厂方法相关的知识,希望对你有一定的参考价值。
创建模式——工厂方法
本文解决上需要修改简单工厂的问题,增加东西,工厂要改代码。
简单来说就是将工厂变成接口:
ArticleDaoFactory.java
public interface ArticleDaoFactory { public ArticleDao build(); }
MybatisArticleDaoFactory.java
public class MybatisArticleDaoFactory implements ArticleDaoFactory{ @Override public ArticleDao build() { return new ArticleDaoForMybatislmpl(); } }
HibernateArticleDaoFactory.java
public class HibernateArticleDaoFactory implements ArticleDaoFactory{ @Override public ArticleDao build() { return new ArticleDaoForHibernatelmpl(); } }
现在User类里面会变成如下:
ArticleDao dao1=new MybatisArticleDaoFactory().build();
但是需要了解工厂的类,不符合迪米特法则,而且每个产品一个工厂很麻烦,之后就要用到抽象工厂。
以上是关于面试重点:设计模式——工厂方法的主要内容,如果未能解决你的问题,请参考以下文章