`

枚举--策略模式

    博客分类:
  • OOD
 
阅读更多

某个功能或算法有多种实现方式,可以使用策略模式:

   


 

 
 

枚举类也可以实现策略模式类似的功能:(前提:实现个数固定)

枚举类声明一个抽像的方法,由各个实例去实现。

 

枚举实例的选择:

 1.直接引用Scope.实例名

 2.由字符串生成 Scope.valueOf("实例名"); 

 

 示例:(参考了Struts 2.3.26 的Scope源码)

public  enum ScopeFactory {
	SINGLETON{
		public  Object create(Class classz){
			return null;
		}
	},
	Thread{
		public  Object create(Class classz){
			return null;
		}
	},
	Request{
		public  Object create(Class classz){
			return null;
		}
	},
	Session{
		public  Object create(Class classz){
			return null;
		}
	};
	public abstract Object create(Class classz);
}

 

 

 

  • 大小: 44.3 KB
分享到:
评论

相关推荐

    ATL中的集合和枚举--一.docx

    ATL提供了一个通用的枚举器对象实现模板——`CComEnumOnSTL`,它采用了策略设计模式,使得开发者可以根据需要定制枚举器的行为。`CComEnumOnSTL`模板的六个参数分别对应以下策略: 1. `Base`: 枚举器接口的基础类,...

    微信小程序--使用策略模式进行表单验证strategy-master.zip

    本项目"微信小程序--使用策略模式进行表单验证strategy-master.zip"聚焦于如何通过策略模式来优化这一过程。策略模式是一种行为设计模式,允许我们在运行时选择算法或策略,使得代码更加灵活且易于扩展。 首先,...

    Java策略模式的使用(枚举策略与简单工厂策略)

    后端同学在开发过程中,势必会遇到多条件判断的情况,大部分时候都会直接采用if-else的形式去处理,这样的操作会存在不易扩展的问题,那么...对比枚举策略与简单工厂+策略模式的不同使用,抛砖引玉,引发你更多的思考

    详解SpringBoot结合策略模式实战套路

    SpringBoot结合策略模式实战套路 策略模式是一种常用的设计模式,它可以使我们的代码更加灵活、可维护和可扩展。在SpringBoot项目中,策略模式可以与依赖注入机制相结合,实现更加灵活的业务逻辑处理。在本文中,...

    Java策略模式+案例

    策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在Java中,策略模式允许我们定义一组算法或策略,并将每个策略封装为一个类,使得它们可以互换,而不会影响到客户端代码。这种模式的核心在于"策略",...

    策略模式工厂方法模式观察者模式

    1. **策略模式**的学习文档,可能会通过具体的案例,如不同排序算法的实现来解释如何使用策略模式,例如快速排序、冒泡排序等。每个算法都可以作为一个策略类,而策略接口规定了算法的公共行为。 2. **工厂方法模式...

    策略模式 演化过程 重构过程

    策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或场景来改变算法的情况。策略模式就是为了解决这类问题而诞生的,它将每种算法封装到具有共同接口的...

    Java-设计模式-单例模式-实现源码(简单实现、双重检查锁、静态内部类、枚举类)

    在Java中,有多种实现单例模式的方法,包括简单实现、双重检查锁定(Double-Checked Locking)、静态内部类和枚举类。下面我们将详细探讨这些不同的实现方式。 1. **简单实现(非线程安全)** 最简单的单例实现...

    java设计模式----单例模式

    总的来说,单例模式的设计旨在提供对唯一实例的受控访问,饿汉模式和懒汉模式分别代表了初始化策略的不同选择,开发者需要根据具体需求平衡初始化时机和线程安全的需求。在实际开发中,还可以使用枚举类型的单例,这...

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

    《设计模式-Java语言中的应用》这本书无疑是学习这一主题的宝贵资源。 首先,我们要理解设计模式的基本分类。设计模式通常分为三类:创建型模式(如工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式),...

    Java开发模式之策略模式

    策略模式是软件设计模式中的一种,它在Java开发中被广泛应用,尤其对于处理算法多样化或行为可变化的场景。在本文中,我们将深入探讨策略模式的概念、结构、优点以及如何在实际开发中应用。 策略模式定义了一系列的...

    实例179 - 高效的枚举元素组合

    在IT行业中,枚举元素组合是一个常见的编程问题,特别是在处理多状态系统或者设计模式时。本文将基于"实例179 - 高效的枚举元素组合"这一主题,深入探讨如何高效地处理枚举类型及其组合。我们将不涉及具体的源代码...

    访问局域网共享时需用户名和密码问题解决方案.pdf

    组策略-计算机配置- Windows 设置-安全设置-本地安全策略-安全选项-网络访问:不允许 SAM 帐户和共享的匿名枚举。设置为已禁用。 2. 允许本机帐户若空密码,允许其它机访问本机。组策略-计算机配置-安全设置...

    实例181 - 遍历枚举接口的元素

    在策略模式中,每种枚举常量代表一种策略,遍历这些枚举可以让我们动态地选择和切换策略。 总的来说,理解和熟练掌握枚举接口的遍历对于编写高质量的Java代码至关重要。通过枚举接口,我们可以实现更安全、可维护的...

    设计模式—策略模式

    策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或场景来执行不同算法的情况。策略模式提供了一种将算法族封装到各自独立的类中,并让它们之间可以互相...

    列举java 枚举相关信息

    - **策略模式**:通过不同的枚举值实现不同的策略。 - **事件类型**:定义不同的事件类型,在事件驱动系统中非常有用。 #### 六、枚举类型的注意事项 尽管枚举类型提供了很多便利,但在使用时也需要注意以下几点: ...

    23种设计模式代码-c#

    - 策略模式:定义一系列的算法,并将每一个算法封装起来,使它们可以互相替换。 - 模式模板:定义一个操作中的算法的框架,而将一些步骤延迟到子类中。 这些设计模式的实现通常包括接口定义、抽象类定义以及具体...

    xp系统中网络间互相访问

    组策略-计算机配置-Windows 设置-安全设置-本地安全策略-安全选项-网络访问:不允许SAM帐户和共享的匿名枚举. 设置为 已禁用 2、本机帐户若空密码,允许其它机访问本机(系统默认是不允许的). 组策略-计算机配置...

    Java设计模式-策略模式

    在Java中,策略模式主要用来处理同一操作的不同实现,使得系统可以根据不同的条件选择不同的算法或行为。 策略模式的核心结构包括策略接口(Strategy Interface)、具体策略实现(Concrete Strategy ...

Global site tag (gtag.js) - Google Analytics