package org.wikimore.simplefactory;
import javax.naming.NameNotFoundException;
//汽车工厂类,可生产已定义的种类的汽车,否则报异常
public class CarFactory {
public Car buildcar(String brand) throws Exception {
if ("BMW".equalsIgnoreCase(brand)){
return new BMW();
}else if("Benz".equalsIgnoreCase(brand)){
return new Benz();
}else if("volvo".equalsIgnoreCase(brand)){
return new Volvo();
}else
throw new NameNotFoundException("工厂不能生产这个牌子的汽车");
}
}
package org.wikimore.simplefactory;
//汽车父类
public class Car {
}
下面是汽车子类
package org.wikimore.simplefactory;
public class Benz extends Car {
public Benz() {
System.out.println("A Benz was build!");
}
}
package org.wikimore.simplefactory;
public class BMW extends Car {
public BMW() {
System.out.println("A BMW was build!");
}
}
package org.wikimore.simplefactory;
public class Volvo extends Car{
public Volvo() {
System.out.println("A volvo was build!");
}
}
测试类
package org.wikimore.simplefactory;
public class Test {
public static void main(String[] args) throws Exception {
CarFactory cf = new CarFactory();
cf.buildcar("Benz");
cf.buildcar("Volvo");
cf.buildcar("BMW");
cf.buildcar("QQ");
}
}
以上为简单工厂
可以造出工厂中已经定义的牌子的车子,CarFactory没有父类或子类,只能生产Car或者Car的子类
这是最简单的工厂模式,甚至不能称之为模式
同时我们可以将CarFactory的buildcar方法定义为静态方法,这样我们就不用去new一个CarFactory而直接生产Car的
这是我对简单工厂的一些浅显的理解,多流于表面,希望以后回看的时候可以有些体会!
分享到:
相关推荐
内容包括统一建模语言基础知识、面向对象设计原则、设计模式概述、简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、...
**Java设计模式——备忘录模式详解** 备忘录模式是一种行为设计模式,它允许对象在不破坏封装性的前提下捕获并存储...同时,备忘录模式与其他设计模式如工厂模式、观察者模式等结合使用,可以构建出更复杂的系统架构。
在实际应用中,备忘录模式可以结合其他设计模式一起使用,例如组合模式用于构建复杂对象的结构,工厂模式用于创建备忘录对象等。同时,为确保数据安全,备忘录模式通常会结合私有化和访问控制来限制对外部对象对备忘...
内容包括统一建模语言基础知识、面向对象设计原则、设计模式概述、简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、...
本系统基于六种设计模式,运用到的设计模式有备忘录模式,简单工厂模式,迭代器模式,状态模式,模版方法模式,单例模式。 具体实现过程、UML类图以及实现效果详见如下项目说明地址: ... 该系统为绘图系统,该系统通过...
运用到的设计模式有备忘录模式,迭代器模式,简单工厂模式,状态模式,模版方法模式,单例模式。 资源包含项目文件(eclipse)以及系统说明(docx文件),系统说明中说明了为什么要使用该模式,使用该模式有什么好处...
所涉及的设计模式包括工厂模式、单例模式、建造模式、原型模式、适配器模式、桥梁模式、组合模式、装饰模式、门面模式、享元模式、代理模式、责任链模式、命令模式、解释器模式、迭代器模式、调停者模式、备忘录模式...
设计模式是软件工程中解决特定问题的一般性解决方案。它由四个基本要素组成:模式名称、问题描述、解决方案和效果。 首先,模式名称是指给定的设计问题及其解决方案的命名,这有助于开发团队在设计上形成一致的理解...
设计模式是软件工程中的一种最佳实践,用于解决在软件开发过程中常见的问题,提供了一套可重用的解决方案。在Java编程语言中,设计模式的应用尤为广泛,因为它们可以帮助开发者构建可扩展、可维护且易于理解的代码。...
1. 创建型模式:包括单例模式、工厂模式(简单工厂、工厂方法、抽象工厂)、建造者模式、原型模式。这类模式主要关注如何创建对象,减少对象创建过程中的耦合,使得对象的创建更加灵活。 2. 结构型模式:如代理模式...
除了备忘录模式,C++设计模式还包括了其他23种设计模式,它们分别是单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式、命令...
《研磨设计模式》完整覆盖GoF讲述的23个设计模式并加以细细研磨。初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌握每个模式,...
根据给定文件的信息,我们可以提炼出关于设计模式的相关知识点,包括设计模式的概念、目标、特点以及常见的设计模式分类和具体应用。以下是对这些知识点的详细解释: ### 设计模式概念 1. **定义**:设计模式是...
在编程领域,设计模式是解决常见问题的经过验证的、可重用的解决方案。它们是经验丰富的软件开发人员智慧的结晶,旨在提高代码的可读性、可维护性和...现在就打开“设计模式Java版”的压缩包,开始你的设计模式之旅吧!
设计模式是软件开发中的一种重要概念,源自建筑领域,由Christopher Alexander提出,后被Gang of Four(GoF)在1994年的《设计模式:可复用面向对象软件的基础》一书中引入到软件工程中。设计模式是解决特定场景下...
1、简单工厂模式lua实现 2、工厂方法模式lua实现 3、原型模式lua实现 4、建造者模式lua实现 5、单例模式lua实现 6、抽象工厂模式lua实现 结构型模式 1、装饰模式lua实现 2、代理模式lua实现 3、外观模式lua实现 4、...
设计模式_源代码大全.zip 包括:1.简单工厂模式 2.策略模式 3.装饰模式 4.代理模式 5.工厂方法模式 6.原型模式 7.模板方法模型 8.外观模式 9.建造者模式 10.观察者模式 11.抽象工厂模式 12.状态模式 13.适配器模式 ...
在本实验中,我们将深入探讨“设计模式”,这是一种在软件工程中被广泛采用的方法,用于解决常见的设计问题并促进代码的可复用性、可维护性和可扩展性。设计模式并非具体的代码或库,而是经验丰富的开发人员在解决...