設計模式 工廠模式

2021-09-16 14:04:42 字數 3023 閱讀 6974

介面car:

public

inte***ce

car

audi類

public

class

audi

implements

car}

byd類

public

class

bydimplements

car}

******factory類

public

class

******factory

else

if(name.

equals

("byd"))

else

}}

測試**

public

class

test

}

採用簡單工廠模式使用者只需要與******factory進行互動,不需要直接與各種類打交道.

public

class

ca***ctory

;public

static car createbyd()

;}

建立工廠介面ca***ctory

public

inte***ce

ca***ctory

createaudi類

public

class

createaudi

implements

ca***ctory

}

createbyd類

public

class

createbyd

implements

ca***ctory

}

測試類

發動機介面及實現類

public

inte***ce

engine

class

luxuryengine

implements

engine

public

void

start()

}class

lowerengine

implements

engine

public

void

start()

}

座椅介面及實現類

public

inte***ce

seat

class

luxuryseat

implements

seat

}class

lowerseat

implements

seat

}

輪胎介面及實現類

public

inte***ce

tyre

class

luxurytyre

implements

tyre

}class

lowertyre

implements

tyre

}

ca***ctory介面

public

inte***ce

ca***ctory

luxuryca***ctory類

public

class

luxuryca***ctory

implements

ca***ctory

public seat createseat()

public tyre createtyre()

}

lowerca***ctory類

public

class

lowerca***ctory

implements

ca***ctory

public seat createseat()

public tyre createtyre()

}

以上**簡單的示範了抽象工廠模式的基本思想.簡單工廠模式

-雖然某種程度不符合設計原則,但實際使用最多.

工廠方法模式

-不修改已有類的前提下,通過增加新的工廠類實現擴充套件.

抽象工廠模式

-不可以增加產品,可以增加產品族.

jdk中calendar的getinstance方法

jdbc中connection物件的獲取

hibernate中sessionfactory建立session

spring中ioc容器建立管理bean物件

xml解析中documentbuilde***ctory建立解析器物件

反射中class物件的newinstance

設計模式 工廠模式 抽象工廠模式

建立物件時不會對客戶暴露建立邏輯,並且通過使用乙個共同的介面來指向建立的物件。sept1 建立乙個公共介面,將要對外開放的方法在這裡定義。sept2 建立實現介面的類,用即實現對外開放的類的方法 sept3 建立工廠,提供乙個get方法,這個方法提供返回實現類的物件 建立選擇 sept4 使用,建立...

設計模式 工廠設計模式

用於建立物件的介面,交給子類去實現 我們舉乙個生產nokia的例子 public abstract class nokiaphone先試定義了乙個抽象類,抽象出方法poweronphone 模擬手機開機的動作 public class nokia5200 extends nokiaphone pub...

設計模式 工廠設計模式

工廠模式分為工廠方法模式和抽象工廠模式 工廠方法模式分為 普通工廠模式,就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。多個工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字串出錯,則不能正確建立物件,而多個工廠方法模式是提供多個工廠方法,分別建立物件。靜態工廠...