工廠模式用於解耦物件的建立過程,將其封裝在工廠類別中,使其與具體類別解耦。在Java 框架中,工廠模式應用於:創建複雜物件(如Spring 中的beans)提供物件隔離,增強可測試性和可維護性支援擴展,透過新增工廠類別增加對新物件類型的支援
什麼是工廠模式?
工廠模式是一種創建物件的模式,它將建立過程封裝在一個工廠類別中,從而使創建過程與創建物件的特定類別解耦。
Java 框架中工廠模式的應用場景
在Java 框架中,工廠模式用於以下場景:
AbstractBeanFactory
類別使用工廠模式建立複雜的對象,如beans 和bean 定義。 實戰案例
下面是使用工廠模式的Spring Bean 的例子:
// 工厂类 public class BeanFactory { public Bean createBean(String beanType) { switch (beanType) { case "A": return new BeanA(); case "B": return new BeanB(); default: throw new IllegalArgumentException("Invalid bean type: " + beanType); } } } // Bean 接口 interface Bean { void doSomething(); } // Bean A 实现 class BeanA implements Bean { @Override public void doSomething() { System.out.println("Bean A doing something"); } } // Bean B 实现 class BeanB implements Bean { @Override public void doSomething() { System.out.println("Bean B doing something"); } } // 主类 public class Main { public static void main(String[] args) { BeanFactory factory = new BeanFactory(); // 使用工厂创建 bean 对象 Bean beanA = factory.createBean("A"); beanA.doSomething(); // 输出:Bean A doing something Bean beanB = factory.createBean("B"); beanB.doSomething(); // 输出:Bean B doing something } }
在這個例子中, BeanFactory
類別是一個工廠類,它負責根據給定的bean 類型建立Bean
物件。 Bean
介面定義了 bean 的公共接口,BeanA
和 BeanB
是 Bean
介面的具體實作。 Main
類別使用 BeanFactory
來建立和使用 Bean
物件。
以上是java框架中工廠模式的應用場景有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!