zoukankan      html  css  js  c++  java
  • 泛型方法

    泛型方法 是方法的模子

    可以存在与泛型类或普通类中,泛型方法的泛型参和泛型类的泛型参是相互独立的。

      class Program
        {
            static void Main(string[] args)
            {
               //泛型方法引用
             
                DD.IsHappy<Dog>(new Dog("KK"));
                DD.IsHappy<int>(3);
            }
    
        }
    abstract public class Pet
        {
            protected string Name;
            protected int Age;
            public Pet(string name)
            {
                Name = name;
                Age = 0;
            }
            public void PrintName()
            {
                Console.WriteLine("Print" + Name);
            }
            public static Pet operator ++(Pet pet)
            {
                ++pet.Age;
                return pet;
            }
            public void ShowAge()
            {
                Console.WriteLine(Name+ " Age = " + Age);
            }
         
            abstract public void Speak();
        }
        public class Dog : Pet
        {
            static int Num;
            static Dog()
            {
                Num = 0;
            }
            public Dog(string name) : base(name)
            {
                ++Num;
            }
            new public void PrintName()
            {
                Console.WriteLine("子print名字是 " + base.Name);
            }
            //override public void Speak()
            sealed override public void Speak()
            {
                Console.WriteLine("子说,我是狗狗 " + Name);
            }
            static public void ShowNum()
            {
                Console.WriteLine("Dog's number = " + Num);
            }
            public void Lost()
            {
                --Num;
                Console.WriteLine(Name + " is Lost!");
            }
    
            public static implicit operator Cat(Dog dog)
            {
                return new Cat(dog.Name);
            }
            public void IsHappy<T>(T target)
            {
                Console.WriteLine("Happy for " + target.ToString());
            }
        }
    View Code
  • 相关阅读:
    Google Protocol Buffers学习
    C学习笔记-一些知识
    前端相关
    Spark笔记-gz压缩存储到HDFS【转】
    maven笔记-将本地jar包打包进可执行jar中
    Spark运行时错误与解决
    机器学习笔记
    Spark笔记-DataSet,DataFrame
    云平台各层解释
    linux笔记-多服务器同时执行相同命令
  • 原文地址:https://www.cnblogs.com/cicily/p/10937353.html
Copyright © 2011-2022 走看看