以上就是我们在好莱坞拍电影的基本要求了,但是有没这种可能呢?就是同时又两个出品人同时在拍泰坦尼克号,这样会不会造成资源的浪费呢。
所以我们改写工厂方法。
public class MovieFactory
{
private static Map<String,Movie> movies = new HashMap<String,Movie>();
public static Movie createMovie(Class c)
{
Movie movie = null;
if (movies.containsKey())
{
movie = movies.get(c.getSimpleName());
}
else
{
//利用反射生产电影,但是不考虑异常情况了
movie = (Movie)Class.forName(c.getName).newInstance();
movies.put(c.getSimpleName(),movie);
}
return movie;
}
}
其实上面这种方式不推荐使用,因为我们就是为了生产对象,不是为了获得一个单例的对象。如果考虑是多例模式的话,可以采用List的方式进行存储。
分享到:
相关推荐
工厂方法模式是面向对象设计模式中的一个创建型模式,它提供了一种封装对象创建过程的方式,使得具体的对象创建过程可以延迟到子类中进行。在C++编程中,工厂方法模式广泛应用于各种软件设计中,因为它能有效地解耦...
创建型设计模式---工厂设计模式实现
NET设计模式--工厂方法例子源码
标题"我讲设计模式--工厂方法"暗示我们将深入探讨工厂方法的设计模式及其应用。这篇博文可能涉及了该模式的基本概念、工作原理以及实际场景下的使用示例。遗憾的是,由于没有直接提供博客的具体内容,我将基于工厂...
工厂方法模式是设计模式中的经典之作,它通过封装创建细节,使得系统的对象创建更加灵活和可扩展。结合反射机制和配置文件的使用,这种模式能够更加动态地适应变化的需求,而无需修改现有的代码结构。在实际开发过程...
java设计模式----抽象工厂模式,简单工厂模式代码 代码内部
**工厂方法设计模式** 在iOS开发中,设计模式是一种被广泛采用的最佳实践,它提供了一种在不指定具体实现的情况下创建对象的方式。工厂方法(Factory Method)是面向对象设计模式中的一种,属于创建型模式。它定义...
抽象工厂模式是设计模式中的一种创建型模式,它提供了一个创建对象族的接口,而无需指定它们的具体类。在.NET开发中,这种模式常用于实现多数据库连接,比如连接到MySQL、SQL Server或Oracle等不同的数据库系统。...
在软件设计模式中,工厂模式是一组非常基础且实用的设计模式,主要分为简单工厂模式、工厂方法模式和抽象工厂模式。这些模式都是为了解决对象创建的问题,通过封装对象的创建过程,使得代码更加灵活,易于扩展和维护...
《设计模式——工厂模式》 在软件工程领域,设计模式是一种在特定情境下解决常见问题的模板,它为程序员提供了一种标准的解决方案。工厂模式是面向对象设计中最为人熟知的设计模式之一,属于创建型模式,其主要目标...
工厂方法模式是面向对象设计中的一种经典设计模式,属于创建型模式。在软件工程中,当我们需要创建一系列相关或相互依赖的对象时,而不希望指定具体的类,工厂方法模式提供了一个很好的解决方案。 工厂方法模式的...
设计模式---抽象工厂模式(Abstract Factory)-UML图 (StarUML)
本篇文章将深入探讨设计模式中的一个核心概念——工厂方法模式,通过Python和C++的示例代码来阐述其原理和应用。 工厂方法模式是一种创建型设计模式,它提供了一个创建对象的接口,但允许子类决定实例化哪一个类。...
Java设计模式 - 简单工厂 & 工厂方法(构建工厂)源码:FactoryModel - 详情:https://blog.csdn.net/Dream_Weave/article/details/83989879
"抽象工厂"是设计模式中的一种,属于创建型模式,它提供了一种创建对象族的接口,而无需指定它们的具体类。这个模式的核心在于隔离了产品对象的创建过程,使得系统对具体产品的依赖最小化,从而增强了系统的灵活性和...
java设计模式-创建者模式-简单工厂模式。详细的讲解了什么是工厂方法模式及应用场景和应用场景的代码事例。及各工厂模式的区别。
简单工厂模式是软件设计模式中的一种基础模式,它属于创建型模式,主要解决对象的创建问题,使得代码在创建对象时更加灵活,同时也隐藏了对象的创建细节。在这个模式中,一个专门的工厂类负责创建特定类型的对象,而...