• 关于泛型的基本概念


    最近都没整么写博客了,想了想还是写一篇!

    List<T>


    1:泛型概述

    泛型主要提高了代码的重用性,例如,可以将泛型看成是一个可回收的箱子,如果在箱子上面贴上苹果的标签,那么该箱子就可以用来运送苹果,
    如果给箱子贴上西瓜的标签,那么该箱子就可以用来运送西瓜。

    2:泛型参数 T

    泛型参数T可以看做是一个占位符,它不是一种类型,它仅仅代表了某种可能的类型,类型参数T可以在使用时用类型来代替
    3:泛型参数命名准则:

    (1)使用描述性名称命名泛型类型参数,除非单个字母名称完全可以让人了解它表示的意义,而描述性名称没有更多的意义。
    比如:public interface(接口关键字) ISessionChannel<Session> //泛型接口
    public delegate(委托关键字) TOutput<Input,OutPut> //定义一个委托

    泛型接口:
    interface [接口名称]<T>
    {
    【接口体】
    }

    声明泛型接口时,与一般接口的唯一区别就是增加了一个<T>,一般来说,申明泛型接口和声明非泛型接口遵循相同的规则,泛型类型声明所
    实现的接口必须对所有可能的构造类型都保持唯一,否则就无法确定该为某些构造类型调用哪个方法

    关于参数T
    1:T:结构---类型参数必须是值类型,可以指定除了Nullable意外的任何值类型
    2:T:类---类型参数必须是引用类型
    3:new()----类型参数必须具有无参数的公共构造函数,当与其它一起使用时,new()约束必须最后指定
    4:T:<接口名称> 类型参数必须是指定的接口或者实现指定的接口,可以指定多个接口约束,约束也可以是泛型的

    泛型方法:
    泛型方法的声明形式:
    【修饰符】 [返回类型] 方法名<参数T>()
    {
    【方法体】
    }

     

  • 相关阅读:
    调试跳转动态打印
    PHP对redis操作详解
    SSL证书没有绿锁您与此网站建立的连接并非完全安全解决办法
    63. Unique Paths II
    62. Unique Paths
    40. Combination Sum II
    60. Permutation Sequence
    59. Spiral Matrix II
    批量修改名字的脚本
    57. Insert Interval
  • 原文地址:https://www.cnblogs.com/remain/p/9945230.html
Copyright © 2020-2023  润新知