23種設計模式之 抽象工廠模式

2021-08-04 19:25:55 字數 1589 閱讀 2609

提供乙個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類

相比入工廠模式而言,如果說工廠模式支援增加任意產品。

那麼抽象工廠模式增加新的產品線很容易,但是無法增加新的產品。

而簡單工廠模式和工廠模式的區別可以認為工廠模式是優化了簡單工廠模式,遵循了開閉原則

public

inte***ce company

public

class

companya

implements

company else

}@override

public computer buildcomputer(string params) else

}}

public

class

companyb

implements

company else

}@override

public computer buildcomputer(string params) else

}}

public

abstract

class computer

public

class

maccomputer

extends

computer

}

public

class

maccomputer1

extends

computer

}

public

abstract

class phone

public

class

iphone

extends

phone

}

public

class

iphone1

extends

phone

}

public

class

androcomputer

extends

computer

}

public

class

androcomputer1

extends

computer

}

public

class

androphone

extends

phone

}

public

class

androphone1

extends

phone

}

public

class test

}

23種設計模式之抽象工廠模式

定義 為建立一組相關或者是相互依賴的物件提供介面,而不需要指定它們的具體類 使用場景 乙個物件族有相同的約束時可以使用抽象工廠模式。類圖 抽象工廠模式與工廠方法模式的區別 抽象工廠模式是工廠方法模式的公升級版本,他用來建立一組相關或者相互依賴的物件。他與工廠方法模式的區別就在於,工廠方法模式針對的是...

23種設計模式之抽象工廠模式

抽象工廠模式定義 提供乙個建立一系列的相關的或者依賴的物件的介面,無需指定它們的具體實現類,具體的時間分別在子類工廠中產生。優點 隔離了具體類的生產實現,使得替換具體的工廠實現類很容易。包含模組有 1.抽象產品介面 定義產品的介面,公共的暴露方法。便於實際的產品類實現。2.具體的產品類 包含實際產品...

23種設計模式01 工廠模式之抽象工廠模式

在上篇文章23種設計模式01 工廠模式 中介紹了簡單工廠模式和工廠方法模式,但是簡單工廠模式在新增新的產品師,需要修改工廠類,違背了開閉原則 ocp原則 工廠方法模式,提供乙個抽象工廠角色,一旦要建立新的同一產品的不同型號,只需要建立乙個具體工廠角色,用於建立對應的產品,而不用修改原有的 解決了簡單...