C# 泛型类型约束 where

2021-01-05 03:27

阅读:380

标签:ems   ram   接口   参数   style   引用   struct   div   HERE   

 1  class Program {
 2         static void Main(string[] args) {
 3 
 4         }
 5     }
 6 
 7     interface IMyInterface {
 8         void Method1();
 9     }
10 
11     //一、六种类型约束
12     //1、类型参数必须是引用类型
13     class MyClass1where T : class {}
14     //2、类型参数必须是值类型
15     class MyClass2where T : struct {}
16     //3、类型参数必须具有无参公共构造函数
17     class MyClass3where T : new() {}
18     //4、类型参数必须是指定的类型或及其子类
19     class MyClass4where T : Program { }
20     //5、类型参数必须是实现了指定接口的对象
21     class MyClass5where T : IMyInterface { }
22     //6、U类型参数必须为T类型或及其子类
23     class List24     {
25         void Method(List items) where U : T
26         {
27             //TODO
28             //Do something...
29         }
30     }
31 
32     //二、约束可以用于类、方法和委托
33     delegate void MyDelegate() where T:class;

 

C# 泛型类型约束 where

标签:ems   ram   接口   参数   style   引用   struct   div   HERE   

原文地址:https://www.cnblogs.com/mojiejushi/p/13191198.html


评论


亲,登录后才可以留言!