博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
反射实例化不同类型的实例
阅读量:5106 次
发布时间:2019-06-13

本文共 857 字,大约阅读时间需要 2 分钟。

项目中经常会用反射来实例化对象,根据参数不同实例化不同类型的实例;

1,定义接口

public interface IOtherAudit {       ResultDTO  GetResult(AuditUserDTO userDto);}

2,根据需要实现两套接口

public class Test1_AuditService : IOtherAudit{        public AuditResultDTO GetResult(AuditUserDTO userDto)        {          //TODO:业务逻辑代码        }}
public class Test2_AuditService : IOtherAudit{        public AuditResultDTO GetResult(AuditUserDTO userDto)        {          //TODO:业务逻辑代码        }}

3,反射得到相关实例

public AuditResultDTO GetResult(AuditUserDTO userDto) {      //获取需要实例化的类型      Type type = Type.GetType("demo.test.Service." + userDto.typeName + "Service,demo.test.Service");      //实例化对象      IOtherAudit service = Activator.CreateInstance(type) as IOtherAudit;      //获取审核结果      AuditResultDTO result = service.GetResult(userDto);       return result; }

 

转载于:https://www.cnblogs.com/Gylianger/p/11226701.html

你可能感兴趣的文章
splay
查看>>
酷炫特效的网站
查看>>
《Linux命令行与shell脚本编程大全 第3版》Linux命令行---30
查看>>
《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---26
查看>>
编程入门之编码风格
查看>>
自学it18大数据笔记-第三阶段Spark-day11——会持续更新……
查看>>
方盒量化与网格相交量化(减少混叠)
查看>>
对OpenCV中seamlessClone的初步实验
查看>>
图像处理程序的序列化和反序列化
查看>>
程序读取时间和服务器设置的不一致
查看>>
vi 配置文件
查看>>
spring面试题
查看>>
操作系统简介
查看>>
Linux下面的C工程
查看>>
rt.jar包添加源文件只需要关联到已安装对应jdk目录下source.zip源码文件即可
查看>>
leetcode的Hot100系列--461. 汉明距离
查看>>
spring boot 项目 freemarker 无法加载static 中 js css 文件 原因(报错404)
查看>>
bzoj3238 [Ahoi2013]差异
查看>>
终于搞定Fastreport2.x PDF输出,相信其他版本也差不多
查看>>
c++ Oracle OCCI 编程
查看>>