`
michael8335
  • 浏览: 187596 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

设计模式之工厂方法

阅读更多
工厂方法是在简单工厂的基础上的进一步抽象,在简单工厂中,所有的对象都是通过一个工厂来创建,在工厂方法中,每个对象都有特定的工厂来创建。
抽象接口(车)
package com.yf.designpattern.factorymethod;

public interface Car {
	public void drive();
}

具体实现类(宝马和奔驰)
package com.yf.designpattern.factorymethod;

public class BmwCar implements Car {

	@Override
	public void drive() {
		System.out.println("This is a BMW!!!");

	}

}
package com.yf.designpattern.factorymethod;

public class BenzCar implements Car {

	@Override
	public void drive() {
		System.out.println("This is a  Benz!!!");

	}

}


抽象工厂接口(汽车制造厂)
package com.yf.designpattern.factorymethod;

public interface CarFactory {
	public Car driver();
}


工厂的具体实现(奔驰车厂和宝马车厂)
package com.yf.designpattern.factorymethod;
//奔驰车厂只生产奔驰车
public class BenzCarFactory implements CarFactory {
	
	@Override
	public Car driver() {
		// TODO Auto-generated method stub
		return new BenzCar();
	}

}
package com.yf.designpattern.factorymethod;
//宝马车厂只生产宝马车
public class BmwCarFactory implements CarFactory {

	@Override
	public Car driver() {
		// TODO Auto-generated method stub
		return new BmwCar();
	}

}


测试类:
package com.yf.designpattern.factorymethod;

public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		CarFactory cf=new BmwCarFactory();
		Car car=cf.driver();
		car.drive();

	}

}


工厂方法的好处是减轻了汽车工厂的负载,具体实例都由特有的对象工厂来产生
0
0
分享到:
评论

相关推荐

    设计模式之工厂方法模式

    工厂方法模式是设计模式中的创建型模式之一,它在软件工程中扮演着非常重要的角色,尤其是在C#这样的面向对象编程语言中。工厂方法模式提供了一种封装对象创建过程的方法,使得具体的创建过程延迟到子类中进行,从而...

    java设计模式之工厂方法模式

    ### Java设计模式之工厂方法模式 #### 一、引言 设计模式是在软件设计领域中广泛应用的一种编程思想,它提供了一系列解决常见问题的最佳实践。在众多设计模式中,工厂方法模式(Factory Method Pattern)是最基本...

    研磨设计模式之工厂方法模式.

    《研磨设计模式之工厂方法模式》是一本深入解析Java设计模式的专业书籍,特别是对工厂方法模式进行了详尽的探讨。设计模式是软件工程中的一种最佳实践,它们是解决常见问题的经验总结,使得代码更加可读、可维护和可...

    JAVA设计模式之工厂方法模式

    ### JAVA设计模式之工厂方法模式 #### 一、引言 设计模式是在软件工程领域内广泛应用的一种编程思想,它能够帮助开发者解决常见的软件设计问题,提高代码的可维护性和复用性。面向对象的设计模式更是现代软件开发...

    C++的设计模式之工厂方法模式(Factory Method)

    C++的设计模式之工厂方法模式(Factory Method) C++的设计模式之工厂方法模式(Factory Method) C++的设计模式之工厂方法模式(Factory Method) C++的设计模式之工厂方法模式(Factory Method)

    Java设计模式之工厂方法的ifelse实现的源码

    在给定的"Java设计模式之工厂方法的ifelse实现"源码中,我们可以看到作者通过if...else语句来实现工厂方法的具体逻辑。通常,这种实现方式是针对不同类型的对象,根据条件判断来决定调用哪个具体类的构造函数。这种...

    设计模式之工厂方法、简单工厂、抽象工厂

    工厂方法、简单工厂和抽象工厂是创建型设计模式的三种不同形式,它们都关注于对象的创建过程,但各有其特点和适用场景。 1. **工厂方法(Factory Method)**: 工厂方法模式定义了一个创建对象的接口,但让子类...

    研磨设计模式之 工厂方法模式.doc

    研磨设计模式之 工厂方法模式.doc

    Java设计模式之工厂方法的源码

    该资源是Java设计模式之工厂方法完整工程的源码,作为博主的工厂方法模式实战之某商场一次促销活动博文的源码,需要使用者结合改博文使用,该源码直接下载后就可以运行的Java工程。该工程是基于Idea+maven+...

Global site tag (gtag.js) - Google Analytics