package com.mhm.simplefactory; /** * * @author Administrator * @描述 抽象产品角色 */ public interface Car { public void drive(); } package com.mhm.simplefactory; /** * * @author Administrator * @描述 奔驰车,具体产品角色 */ public class Benz implements Car { @Override public void drive() { System.out.println("开奔驰车"); } } package com.mhm.simplefactory; /** * * @author Administrator * @描述 宝马车,具体产品角色 */ public class Bmw implements Car { @Override public void drive() { System.out.println("开宝马车"); } } package com.mhm.simplefactory; /** * * @author Administrator * @描述 工厂类角色 */ public class Driver { public static Car driveCar (String carName) throws Exception { if (carName.equalsIgnoreCase("benz")) { return new Benz(); } else if (carName.equalsIgnoreCase("bmw")) { return new Bmw(); } else { throw new Exception("没有此车"); } } } package com.mhm.simplefactory; /** * @描述 开车人 * @author Administrator * */ public class Magnate { public static void main(String[] args) { try { Car car = Driver.driveCar("bmw"); car.drive(); } catch (Exception e) { e.printStackTrace(); } } }
当车多后,需要修改工厂类,这不符合开闭模式(对扩展开放,对修改封闭)
所以后续使用工厂方法模式。
相关推荐
工厂模式分为三种主要类型:简单工厂模式、工厂方法模式和抽象工厂模式。 1. **简单工厂模式** 简单工厂模式是最简单的工厂模式实现,它提供一个静态方法或者类来创建对象,这个类通常被称为“工厂”。用户只需要...
在软件设计模式中,工厂模式是一组非常基础且实用的设计模式,主要分为简单工厂模式、工厂方法模式和抽象工厂模式。这些模式都是为了解决对象创建的问题,通过封装对象的创建过程,使得代码更加灵活,易于扩展和维护...
**简单工厂模式**是软件设计模式中的一种,属于创建型模式。在Java编程中,它是一种用于创建对象的简便方法,将对象的实例化过程封装到一个单独的工厂类中,使得客户端代码无需直接调用具体类的构造函数,而是通过...
UML文档-简单工厂模式 简单工厂模式是一种专门负责将大量有共同接口的类实例化的模式,而不必事先知道每次是要实例化哪一个类的模式。它定义一个用于创建对象的接口,由子类决定实例化哪一个类。 简单工厂模式的...
java设计模式 简单工厂模式uml类图,一张图就让你秒懂简单工厂模式
简单工厂模式是一种创建型设计模式,它提供了一个创建对象的接口,但允许子类决定实例化哪一个类。这种模式使得代码能够将实例化的责任封装起来,使得客户端代码无需关心具体的对象实现,只需要知道一个公共接口即可...