泛型

总是优先考虑使用泛型:

避免在泛型类型中声明静态成员

 

复制代码
static void Main(string[] args)
        {
            MyList mylist01 = new MyList();
            MyList mylist02 = new MyList();
            Console.WriteLine(MyList.Count); // 2 
            Console.WriteLine();

            MyListT<int> listInt1 = new MyListT<int>();
            MyListT<int> listInt2 = new MyListT<int>();
            MyListT<string> listString = new MyListT<string>();
            Console.WriteLine(MyListT<int>.Count); // 2
            Console.WriteLine(MyListT<string>.Count); // 1


            Console.WriteLine("Hello World!");
        }

        class MyList
        {
            public static int Count { get; set; }
            public MyList()
            {
                Count++;
            }
        }

        class MyListT<T>
        {
            public static int Count { get; set; }

            public MyListT()
            {
                Count++;
            }
        }
复制代码

 

T会根据指定的不同类型的数据类型而变成不同的数据类型,类型之间不共享静态成员。

 

非泛型类型中的泛型方法并不会在运行时的本地代码中生成不同的类型

 class FMyList
        {
            static int Count;
            public static int Func<T>()
            {
                return ++Count;
            }
        }
Console.WriteLine(FMyList.Func<int>());
Console.WriteLine(FMyList.Func<int>());
Console.WriteLine(FMyList.Func<string>());

 

posted @   Wen_Chen  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示