ToB企服应用市场:ToB评测及商务社交产业平台

标题: C#委托与协变逆变 [打印本页]

作者: 一给    时间: 2022-8-9 14:43
标题: C#委托与协变逆变
协变:子类向父类或基类转化
  1.     public class A { }
  2.     public class B : A { }
  3.     public class C : B { }
  4.     class Program
  5.     {
  6.         public static A T1() { return new A(); }
  7.         
  8.         public static B T2(){ return new B();}
  9.         public static C T3() { return new C(); }
  10.         public delegate object testDeleg();
  11.         //public delegate A testDeleg();
  12.         static void Main(string[] args)
  13.         {
  14.             testDeleg testDeleg = T1;
  15.             testDeleg testDeleg1 = T2;
  16.             testDeleg testDeleg2 = T3;
  17.         }
  18.     }
复制代码
逆变:父类向子类转化
  1.     public class A { }
  2.     public class B : A { }
  3.     public class C : B { }
  4.     class Program
  5.     {
  6.         public static void T1(A a) { }
  7.         public static void T2(B b) { }
  8.         public static void T3(C c) { }
  9.         public delegate void TestDelegate(C c);
  10.         public static TestDelegate dele;
  11.         static void Main(string[] args)
  12.         {
  13.             dele += T1;
  14.             dele += T2;
  15.             dele += T3;
  16.         }
  17.     }
复制代码
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4