设计模式之工厂方法模式(简单工厂模式/工厂方法模式/抽象工厂模式)
工厂方法模式分三中:简单工厂模式、工厂方法模式、抽象工厂模式
产品类:
interface ICar{
void run();
}
public Class BMW implements ICar{
public void run(){
System.println("宝马跑100码");
}
}
public Class LBJN implements ICar{
public void run(){
System.println("兰博基尼跑200码");
}
}
工厂类:
public Class CarFactory{
public ICar createCar(int case){
if(case == 100){
return new BMW();
}
if(case == 200){
return new LBJN();
}
}
}
调用:
public Class Test{
//创建工厂实例对象
CarFactory factory = new CarFactory();
//获取产品并且执行方法
factory.createCar(200).run();
}
产品类:
interface ICar{
void run();
}
public Class BMW implements ICar{
public void run(){
System.println("宝马跑100码");
}
}
public Class LBJN implementsICar{
public void run(){
System.println("兰博基尼跑200码");
}
}
工厂类:
//抽象工厂
interface ICarFactory{
ICar createCar();
}
//创建宝马的工厂
public Class BMWFactory implements ICarFactory{
ICar createCar(){
return new BMW();
}
}
//创建兰博基尼的工厂
public Class LMJNFactory implements ICarFactory{
ICar createCar(){
return new LMJN();
}
}
调用:
public Class Test{
//创建抽象工厂实例对象指向宝马factory
ICarFactory factory = new BMWFactory();
//获取产品并且执行方法
factory.createCar().run();
}
产品类:
//食品类产品族
interface IFood{
void eat();
}
public Class SummerFood implements IFood{
void eat(){
}
}
public Class WinnerFood implements IFood{
void eat(){
}
}
//衣服类产品族
interface ICloths{
void dress();
}
public Class SummerCloths implements ICloths{
void dress(){}
}
public Class WinnerCloths implements ICloths{
void dress(){}
}
工厂类:
interface IFactory{
IFood createFood();
ICloths createCloths();
}
Public Class SummerFactory(){
IFood createFood(){
return new SummerFood();
}
ICloths createCloths(){
return new SummerCloths();
}
}
Public Class WinnerFactory(){
IFood createFood(){
return new WinnerFood();
}
ICloths createCloths(){
return new WinnerCloths();
}
}
- 设计模式:工厂方法模式(Factory Method)和抽象工厂模式(Abstact Factory)
- 设计模式理解之工厂模式(简单工厂模式、工厂方法模式、抽象工厂模式)
- 设计模式之简单工厂、工厂方法模式、抽象工厂模式
- iOS常用设计模式——工厂方法(简单工厂模式,工厂方法模式, 抽象工厂模式)
- "围观"设计模式(8)--创建型之简单工厂模式、工厂方法模式、抽象工厂模式
- 设计模式(Design Patterns)-可复用面向对象软件的基础 02:工厂方法模式(Factory Method)和抽象工厂模式(Abstract Factory)
- 设计模式:工厂方法模式(Factory Method)和抽象工厂模式(Abstact Factory)
- iOS常用设计模式——工厂方法(简单工厂模式,工厂方法模式, 抽象工厂模式)
- 设计模式-工厂方法模式、抽象工厂模式
- 设计模式之_简单工厂模式、工厂方法模式、抽象工厂模式 、策略模式、策略与工厂的区别(转)
- iOS常用设计模式——工厂方法(简单工厂模式,工厂方法模式, 抽象工厂模式)
- 【设计模式】简单工厂模式、工厂方法模式和抽象工厂模式区别与联系
- 设计模式系列——三个工厂模式(简单工厂模式,工厂方法模式,抽象工厂模式)
- 设计模式之工厂方法模式|抽象工厂模式
- 设计模式系列——三个工厂模式(简单工厂模式,工厂方法模式,抽象工厂模式)
- c++设计模式之简单工厂模式、工厂方法模式、抽象工厂模式
- Java设计模式编程中的工厂方法模式和抽象工厂模式
- 设计模式——工厂方法模式(FactoryMethod)和抽象工厂模式(Abstract Factory)
- 【JS设计模式】温习简单工厂模式、工厂方法模式、抽象工厂模式概念
- 设计模式系列(七)简单工厂模式、工厂方法模式和抽象工厂模式对比