新聞中心
2、優(yōu)點及適用場景3、實現(xiàn)步驟4、Java實現(xiàn)簡單工廠模式代碼示例5、使用示例在軟件開發(fā)中,本文將介紹使用Java實現(xiàn)簡單工廠模式。
- 本文目錄導讀:
- 1、什么是簡單工廠模式?
- 2、優(yōu)點及適用場景
- 3、實現(xiàn)步驟
- 4、Java實現(xiàn)簡單工廠模式代碼示例
- 5、使用示例

在軟件開發(fā)中,設計模式是提高代碼質(zhì)量和可維護性的重要方法之一。其中,簡單工廠模式是最常見、最基礎也最易理解的設計模式之一。本文將介紹使用Java實現(xiàn)簡單工廠模式。
什么是簡單工廠模式?
簡單工廠(Simple Factory)又稱為靜態(tài)工廠方法(Static Factory Method),它屬于創(chuàng)建型設計模式。通俗來說,就是通過一個類來創(chuàng)建不同類對象的實例化過程。
舉個例子:假如有多個形狀需要被畫出來,比如圓形、正方形、三角形等等。如果每次都使用new關鍵字去創(chuàng)建這些對象,則會使得代碼非常冗長而且難以管理。此時我們可以采用“專門制造汽車”的方式——即定義一個ShapeFactory類,在該類中封裝了所有與對象創(chuàng)建相關的邏輯,并根據(jù)傳入?yún)?shù)類型返回特定類型對象。
優(yōu)點及適用場景
- 降低耦合度
- 提高擴展性
- 隱藏具體產(chǎn)品
- 對客戶端隱藏具體產(chǎn)品構造細節(jié)
適用場景:
1. 工廠類負責創(chuàng)建的對象比較少;
2. 客戶端只知道傳入工廠類的參數(shù),對于如何創(chuàng)建對象不關心。
實現(xiàn)步驟
1. 創(chuàng)建抽象接口或者抽象類
2. 創(chuàng)建具體產(chǎn)品類并繼承自抽象接口或者抽象類
3. 創(chuàng)建工廠方法來生成具體產(chǎn)品的對象
Java實現(xiàn)簡單工廠模式代碼示例
下面是一個使用Java語言實現(xiàn)簡單工廠模式的示例代碼:
```
// 抽象接口:形狀 Shape
public interface Shape {
void draw(); // 畫圖形
}
// 具體產(chǎn)品類:圓形 Circle
public class Circle implements Shape {
@Override
public void draw() {
System.out.println("畫了一個圓形");
}
// 具體產(chǎn)品類:正方形 Square
public class Square implements Shape {
System.out.println("畫了一個正方形");
// 工廠方法:ShapeFactory
public class ShapeFactory {
// 根據(jù)傳入?yún)?shù)類型返回特定類型對象。
public static Shape getShape(String shapeType){
if(shapeType == null){
return null;
}
if(shapeType.equalsIgnoreCase("CIRCLE")){
return new Circle();
} else if(shapeType.equalsIgnoreCase("SQUARE")){
return new Square();
} else{
}
}
上述代碼中,我們定義了三份文件分別為Shape、Circle和Square。其中,Shape是抽象接口,Circle和Square是具體產(chǎn)品類。另外,我們還定義了一家工廠方法ShapeFactory,用于根據(jù)傳入?yún)?shù)類型返回特定類型對象。
使用示例
下面是一個使用Java實現(xiàn)簡單工廠模式的示例代碼:
public class SimpleFactoryDemo {
public static void main(String[] args) {
Shape circle = ShapeFactory.getShape("CIRCLE");
circle.draw();
Shape square = ShapeFactory.getShape("SQUARE");
square.draw();
在上述代碼中,我們通過調(diào)用getShape()方法來獲取圓形和正方形對象,并分別調(diào)用它們的draw()方法進行繪圖操作。
簡單工廠模式在軟件開發(fā)中應用廣泛且易理解。本文介紹了Java語言實現(xiàn)簡單工廠模式的基本流程及其優(yōu)點和適用場景,并提供了相應的示例代碼。希望讀者能夠掌握該設計模式并將其運用到自己的項目中去,使得代碼更加優(yōu)雅、易于管理以及可擴展性更強。
當前名稱:Java實現(xiàn)簡單工廠模式:讓你的代碼更加優(yōu)雅
轉(zhuǎn)載注明:http://m.fisionsoft.com.cn/article/cdhcidc.html


咨詢
建站咨詢
