`
TRAMP_ZZY
  • 浏览: 139902 次
社区版块
存档分类
最新评论

设计模式-内部类工厂模式

阅读更多
public interface Service {
	void method1();
	void method2();
}

public interface ServiceFactory {
	Service getService();
}

public class Implementation1 implements Service {

	@Override
	public void method1() {
	}

	@Override
	public void method2() {
	}

	public static ServiceFactory factory = 
			new ServiceFactory() {
				@Override
				public Service getService() {
					return new Implementation1();
				}
	};
}


public class Implementation2 implements Service {

	@Override
	public void method1() {
	}

	@Override
	public void method2() {
	}

	public static ServiceFactory factory = 
			new ServiceFactory() {
				@Override
				public Service getService() {
					// TODO Auto-generated method stub
					return new Implementation2();
				}
	};
}

public class Factories {
	
	public static void serviceConsumer(ServiceFactory factory) {
		Service s = factory.getService();
		s.method1();
		s.method2();
	}
	
	public static void main(String[] args) {
		serviceConsumer(Implementation1.factory);
		serviceConsumer(Implementation2.factory);
	}

}
分享到:
评论

相关推荐

    java设计模式----抽象工厂模式

    java设计模式----抽象工厂模式,简单工厂模式代码 代码内部

    设计模式--抽象工厂模式实现多数据库连接

    抽象工厂模式是设计模式中的一种创建型模式,它提供了一个创建对象族的接口,而无需指定它们的具体类。在.NET开发中,这种模式常用于实现多数据库连接,比如连接到MySQL、SQL Server或Oracle等不同的数据库系统。...

    设计模式-工厂方法模式

    工厂方法模式是设计模式中的经典之作,它通过封装创建细节,使得系统的对象创建更加灵活和可扩展。结合反射机制和配置文件的使用,这种模式能够更加动态地适应变化的需求,而无需修改现有的代码结构。在实际开发过程...

    一例读懂设计模式-单例模式、简单工厂模式.zip

    本资源“一例读懂设计模式-单例模式、简单工厂模式.zip”旨在帮助初学者通过实例深入理解这两种重要设计模式:单例模式和简单工厂模式。以下是关于这两个模式的详细讲解。 1. **单例模式**: 单例模式是一种限制类...

    设计模式-Java语言中的应用

    此外,书中还会深入探讨如何在Java中实现这些模式,包括如何利用Java的面向对象特性,如继承、封装和多态,以及如何利用接口、匿名内部类等特性来优化设计模式的应用。例如,Java的枚举类型可以方便地实现单例模式,...

    设计模式-简单工厂模式-披萨店C#语言版

    简单工厂模式是软件设计模式中的一种,它属于创建型模式,旨在提供一个统一的接口,用来创建一组相关或相互依赖的对象。在这个例子中,我们关注的是如何使用C#语言实现这个模式,特别是在披萨店的场景下。 在披萨店...

    设计模式精解-GoF-23种设计模式解析--附C++源代码

    - 抽象工厂模式(Abstract Factory):提供一个接口,用于创建相关或依赖对象的家族,而无需指定它们的具体类。 - 建造者模式(Builder):将复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示...

    Java设计模式----通俗易懂版

    - 抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,无需指定它们的具体类。 - 建造者模式:将复杂对象的构建与其表示分离,使同样的构建过程能创建不同的表示。 - 原型模式:通过复制已有对象来创建...

    java语言--内部类总结

    内部类的应用场景广泛,如在设计模式中的单例模式、工厂模式,以及Swing组件的事件处理等。它们提供了更灵活的封装和访问控制,使得代码结构更加清晰,提高了代码的可读性和复用性。理解并熟练运用内部类,对于提升...

    23种 设计模式---面向对象的基本原则

    - 抽象工厂模式(Abstract Factory):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类。 - 构建者模式(Builder):将一个复杂对象的构建与其表示分离,使同样的构建过程可以创建不同的表示...

    C#设计模式-C#设计模式

    工厂模式是一种创建型设计模式,它提供了一个接口,用于创建对象,但允许子类决定实例化哪个类。这在C#中尤其有用,当需要动态地根据条件创建不同类型的对象时。 3. 抽象工厂模式(Abstract Factory): 抽象工厂...

    2.设计模式-工厂模式1

    2. 当你需要为库或框架提供扩展其内部组件的方法时,工厂模式可以提供一种标准的方式来创建和注入新的组件。 工厂模式的主要优点包括: 1. **解耦**:它将对象的创建与对象的使用分离,使得客户端代码不直接依赖于...

    设计模式精解-GoF 23种设计模式解析附C++实现源码

    ### 设计模式精解——GoF 23种设计模式解析及C++实现源码 #### 引言 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。GoF(Gang of Four)所提出的23种设计模式,被认为是面向对象...

    后端-设计模式-java-精讲

    设计模式分为三大类:创建型模式、结构型模式和行为型模式。 #### 二、面向对象编程基础 面向对象编程(OOP)是一种流行的编程范式,它基于对象的概念,将数据和处理数据的方法捆绑在一起。面向对象编程具有四个核心...

    设计模式-2

    - 抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类。 - 建造者模式:将复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。 - 原型模式:通过复制已有对象...

    java之设计模式--各种设计模式解析

    本篇将详细解析几种常见的设计模式,包括单例模式、工厂模式和命令模式。 首先,我们来看工厂方法模式。在软件开发中,经常遇到需要创建对象,但具体创建哪种类型的对象取决于特定条件的情况。工厂方法模式提供了一...

    设计模式课程设计---使用5个以上不同的设计模式完成(java)

    在本设计模式课程设计中,我们重点探讨了五个核心的设计模式:原型模式、单例模式、抽象工厂模式、代理模式和建造者模式。这些模式在Java编程中具有广泛的应用,能够帮助开发者创建更加灵活、可扩展和易于维护的代码...

    内部类和设计模式1

    【内部类】 内部类是Java中的一种...学习内部类和设计模式能够提高代码的复用性、可维护性和灵活性,是成为专业Java开发人员必备的知识点。通过深入理解和实践这些概念,可以编写出更加高效、易于理解和扩展的代码。

    设计模式精解-GoF 23种设计模式解析附C++实现源码.pdf

    ### 设计模式精解——GoF 23种设计模式解析及C++实现源码 #### 0. 引言 设计模式是软件工程领域的一个重要概念,它提供了一种解决常见问题的方法论。GoF(Gang of Four)所提出的23种设计模式被视为面向对象设计的...

Global site tag (gtag.js) - Google Analytics