Java策略模式+反射动态创建对象
2016-10-08 18:46
316 查看
Java的反射机制使得对象可以在运行期间被动态创建。如果一个功能有很多种算法或者策略,可以使用策略模式,对于不同的条件创建不同的策略,如果策略会拓展,可以利用反射来减少条件判断。
1.接口
2.具体的策略类
3.测试类
1.接口
package com.yy.test.reflection; public interface IHandler { public void handle(); }
2.具体的策略类
package com.yy.test.reflection; public class HandlerStrategyOne implements IHandler{ public void handle() { System.out.println("HandlerStrategyOne handle"); } }
package com.yy.test.reflection; public class HandlerStrategyTwo implements IHandler{ public void handle() { System.out.println("HandlerStrategyTwo handle"); } }
3.测试类
package com.yy.test.reflection; public class HandlerTest { public static void main(String[] args) { String classPrefix = "com.yy.test.reflection.HandlerStrategy"; String postfix = "One"; String className = classPrefix + postfix; Class clazz; try { clazz = Class.forName(className); IHandler handler = (IHandler) clazz.newInstance(); handler.handle(); } catch (Exception e) { System.out.println("HandlerTest.main error:"+e); } } }
相关文章推荐
- protobuf在java应用中通过反射动态创建对象
- [Java]利用反射机制动态加载并创建包含参数的对象
- protobuf在java应用中通过反射动态创建对象(DynamicMessage)
- protobuf在java应用中通过反射动态创建对象
- 自己在项目中的学习总结:利用工厂模式+反射机制+缓存机制,实现动态创建不同的数据层对象接口
- [转载内容]动态创建菜单,menustrip,根据权限显示菜单,控制菜单可用,反射,给窗体传值,反射对象传值,public static Object CreateInstance ( Type type, params Object[] args )
- 反射学习笔记之动态创建对象和调用方法
- .Net 中的反射(动态创建类型实例) - Part.4动态创建对象
- java里,enum对象的反射创建
- C#利用反射动态创建对象
- [C#] 利用反射动态创建对象
- .Net基础:学习反射中的动态创建对象
- 利用反射动态创建对象
- 利用反射动态实例化对象(工厂模式)
- C# 利用反射动态创建对象
- C# 利用反射动态创建对象
- 利用反射动态创建对象
- 一段用java反射动态构建对象的代码
- 动态创建菜单,menustrip,根据权限显示菜单,控制菜单可用,反射,给窗体传值,反射对象传值,public static Object CreateInstance ( Type type, params Object[] args )
- 用反射动态创建对象,类型无法转换的困惑