zoukankan      html  css  js  c++  java
  • 第一节泛型

    .Net Framework1.0  c# 1.0 版本

    打印不同的类型参数,需要些多个方法

    /// <summary>
    /// 打印一个int值
    /// </summary>
    /// <param name="iParameter"></param>
    public static void ShowInt(int iParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(CommonMethod).Name, iParameter.GetType().Name, iParameter);
    }

    /// <summary>
    /// 打印个string值
    /// </summary>
    /// <param name="sParameter"></param>
    public static void ShowString(string sParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(CommonMethod).Name, sParameter.GetType().Name, sParameter);
    }

    /// <summary>
    /// 打印个DateTime值
    /// </summary>
    /// <param name="oParameter"></param>
    public static void ShowDateTime(DateTime dtParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(CommonMethod).Name, dtParameter.GetType().Name, dtParameter);
    }

    可以通过Object父类继承的方式来优化代码


    /// <summary>
    /// 打印个object值
    /// 1 object类型是一切类型的父类
    /// 2 通过继承,子类拥有父类的一切属性和行为;任何父类出现的地方,都可以用子类来代替
    ///
    /// .Net Framework1.0 1.1
    /// 亚当 任何一个夏娃,都可以
    ///
    /// object引用类型 加入传个值类型int 会有装箱拆箱 性能损失
    /// 类型不安全
    /// </summary>
    /// <param name="oParameter"></param>
    public static void ShowObject(object oParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(CommonMethod), oParameter.GetType().Name, oParameter);

    //Console.WriteLine($"{((People)oParameter).Id}_{((People)oParameter).Name}");

    }

    /// <summary>
    /// 2.0推出的新语法
    /// 泛型方法解决用一个方法,满足不同参数类型;做相同的事儿
    /// 没有写死参数类型,调用的时候才指定的类型
    /// 单身狗:小西瓜
    /// 章子怡 范冰冰 凤姐
    /// 延迟声明:把参数类型的声明推迟到调用
    ///
    /// 推迟一切可以推迟的~~ 延迟思想
    ///
    ///
    /// 不是语法糖,而是2.0由框架升级提供的功能
    /// 需要编译器支持+JIT支持
    /// </summary>
    /// <typeparam name="T">T/S 不要用关键字 也不要跟别的类型冲突 </typeparam>
    /// <param name="tParameter"></param>
    public static void Show<T>(T tParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(GenericMethod), tParameter.GetType().Name, tParameter.ToString());
    }


    public static void ShowObject(object oParameter)
    {
    Console.WriteLine("This is {0},parameter={1},type={2}",
    typeof(GenericMethod), oParameter.GetType().Name, oParameter);
    }

  • 相关阅读:
    司法相关学习网站视频资料
    小型网站如何防范DDoS攻击
    教你9招 破解多种系统登陆密码方法 (1)
    加快Win7整体运行速度的12个小技巧
    手机指令大全,需要可以看看
    Java、fileless恶意软件威胁桌面安全
    浅谈Android手机木马手工查杀
    Win7路由器设置过程
    如何加强移动应用开发安全?
    FTP常用故障代码注解
  • 原文地址:https://www.cnblogs.com/yoyo-524/p/9506079.html
Copyright © 2011-2022 走看看