博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接口、继承和泛型方法的使用
阅读量:6787 次
发布时间:2019-06-26

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

接口,继承到方法中List<IA>的调用

public class InterfaceTest{    void Test()    {        var lstA1 = new List
(); var lstA2 = new List
(); TestMethod(lstA1, lstA2);//此时是不能编译的。错误:与xxxx最匹配的重载方法具有一些无效参数 } void TestMethod(List
a1, List
a2) { }}public class A1 : IA1 { }public class A2 : IA2 { }public interface IA1 { }public interface IA2 { }

把方法修改成泛型的方法,然后利用where来约束输入的类型必须继承IA1和IA2的接口。编译通过。

只需要修改方法的代码,其他代码无需修改。

void TestMethod
(List
a1, List
a2) where T1 : IA1 where T2 : IA2{ }

见识到泛型的强大了。List<class>可能由于包了一层,导致不能编译通过,不知道这是不是在协变和抗变的范畴,不继续测试了。赶紧敲代码去了。

留文备用。icy.

转载地址:http://yqigo.baihongyu.com/

你可能感兴趣的文章
借助Gradle Plugin解决模块化开发中模块如何对外暴露接口
查看>>
深圳车牌识别助力汽车检测,颠覆传统方式
查看>>
tomcat,tomcat7配置https
查看>>
Linux进程管理
查看>>
rpm命令管理程序包
查看>>
小米6.0系统(亲测有效)激活Xposed框架的步骤
查看>>
我的友情链接
查看>>
JMX对weblogic的监控指标小结
查看>>
Image Map的制作
查看>>
solaris 11 中SAP的启动和停止
查看>>
centOS 6.2 升级 kernel 3.2.9
查看>>
jenkins构建shell或者python脚本中含有远程登录复制会报错解决办法
查看>>
python脚本 字符串变量 强制 不转义 win地址 不转义输出
查看>>
IT自学要走远,更要走深
查看>>
Java中常用的几种排序算法
查看>>
分支3-CentOS6.5下 子域授权、请求转发 的教程
查看>>
Javascript 拖拽 放大镜
查看>>
利用PowerShell创建事件日志
查看>>
python光荣之路测试开发班list学习笔记
查看>>
【c#】Excel COM组件在.net程序中的使用
查看>>