zoukankan      html  css  js  c++  java
  • 泛型

      泛型:指的是泛指的类型,可以将类型在不同的类或者接口中进行传递,类似于传参

      泛型在类中:

        把一个类型做成泛型,可以节省大量的代码

        泛型在类中的作用域仅限于这个类,不允许被继承    

    public class Person<T>
    {
        public T t;
        public static void show(T tt)
        {
            Console.WriteLine(tt);
        }
    }
    

      泛型在方法中,会根据实参自动匹配T属于什么类型

     public class Text
        {
            public static void Show<T>(T t)
            {
    
            }
            public static void TTT()
            {
                Show(10);//使用泛型方法
            }
            public static void Show2<T>()
            {
    
            }
            public static void TT()
            {
                Show2<int>();
            }
        }
    

      泛型在接口中的应用:

      

     public interface IAddService<T, M>
        {
            void Add(T t, M m);
        }
        public class Demo : IAddService<int, string>
        {
    
            public void Add(int a, string b)
            {
    
            }
        }
    

      泛型限定:

        泛型的约束条件

        关键字:where(表示对一个泛型的约束条件)

        

        class Animal { }
        class Dog : Animal { }
        class HaShiQi : Dog { }
        class Demo<M,T> 
            where M :Animal //必须是Animal或者Animal的子类
            where T : Dog,new()   //new()表示Demo这个类必须提供无参的构造方法
        {
    
        }
    

      

  • 相关阅读:
    codevs 3049 舞蹈家怀特先生
    洛谷P2530 [SHOI2001]化工厂装箱员
    洛谷P2736 “破锣摇滚”乐队 Raucous Rockers
    Phalanx
    Treats for the Cows
    Very Simple Problem
    Alice and Bob
    FatMouse and Cheese
    Tickets
    Piggy-Bank
  • 原文地址:https://www.cnblogs.com/xingyunge/p/6816973.html
Copyright © 2011-2022 走看看