首页 > 代码库 > Spring-简单工厂模式感性认知
Spring-简单工厂模式感性认知
或许在开发的过程中可能会遇到诸如:
1. 不能预见创建哪一种类的实例。
2.不希望将类被如何创建或者哪一个类的实例被创建的相关信息暴露给用户。
package fh.first.factory; /* * Aim:简单的工厂模式 */ public class Factory { /* * name: getBean * str: class's name */ public static Object getBean(String str){ try { return Class.forName(str).newInstance(); } catch (Exception e) { e.printStackTrace(); return null; } } }
这里工厂类通过 str 参数来创建不同的子类。
子类一般都会实现相同的接口,通过接口保存工厂返回的对象指针。
/* * 测试类 * */ public class Test2 extends TestCase{ public void testGetBean(){ /* * AccountDaoIf :支付接口 * */ AccountDaoIf adi=(AccountDao)Factory.getBean("fh.first.ic.AccountDao"); adi.deposit(); } }工厂类不完善的地方在于每增加一个子类,都需要在工厂类中增加相应的逻辑判断和代码,所以工厂随着商品的增加会变得越来越不合适,不适合很复杂的业务环境。
Spring-简单工厂模式感性认知
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。