Java學習之 使用反射實現工廠設計模式

2021-09-22 08:21:59 字數 535 閱讀 9685

在多增加乙個產品類時需要修改工廠類,違背了開閉原則(ocp);

為了改善這一缺陷,我們引出使用反射實現工廠設計模式

1.不違背開閉原則

2.**實用性性強

inte***ce

ifruit

class

implements

ifruit

}class

orange

implements

ifruit

}class

fruitfactory

catch

(illegalacces***ception e)

catch

(instantiationexception e)

}catch

(classnotfoundexception e)

return null;

}}

public

class

test

}

工廠模式(java反射的使用)

在工廠模式中,你不需要關係水果是怎麼種出來的,你只要知道水果的名字,將名字交給工廠,你就可以得到水果。我們首先建立乙個水果的介面,所有水果都有乙個被吃了的方法,如下 所示 package com.fruitinte ce.demo public inte ce fruit 我們通過水果的介面定義好具...

反射實現抽象工廠

上篇我們說了介面工廠,接下來我們看看抽象工廠 抽象類用abstract修飾,抽象類不能被例項化,抽象方法必須宣告在抽象類中,抽象型別不一定不需存在抽象方法,具體派生類必須覆蓋基類的抽象方法,抽象派生類可以覆蓋基類的抽象方法也可以不覆蓋 這樣我們就實現了在基類中新增error方法,子類中無需新增,只需...

反射實現簡單工廠模式

傳統的簡單工廠模式缺點是 缺點 由於工廠類集中了所有例項的建立邏輯,這就直接導致一旦這個工廠出了問題,所有的客戶端都會受到牽連 這樣一來,但產品的種類增加的時候,即有不同的產品介面或者抽象類的時候,工廠類就需要判斷何時建立何種種類的產品,這就和建立何種種類產品的產品相互混淆在了一起,違背了單一職責,...