Java泛型学习笔记

 

泛型

  • 泛型类的定义

    『访问权限』 class 类名称 <泛型类型1,泛型类型2,……,泛型类型3>{
    『访问权限』 泛型类型标识 变量名称 ;

    『访问权限』 泛型类型标识 方法名称(){};

    『访问权限』 返回值类型声明 方法名称( 泛型类型标识 变量名称 ){};

  • 泛型对象的定义

    类名称<具体类> 对象名称 =new 类名称<具体类> ();

  • 通配符 <?>

    只能接收任意类型的对象,不能对其进行修改

  • 受限泛型

    •  
      • 1.设置上限

        声明类:『访问权限』 class 类名称 <? extends >{}

        声明对象:类名称<extends > 对象名称 =new 类名称<extends > ();

        2.设置下限

        声明类:『访问权限』 class 类名称 <? super >{}

        声明对象:类名称<super > 对象名称 =new 类名称<super > ();

  • 泛型与子类继承的限制

    一个子类可以通过多态性,为其父类实例化。但是子类的泛型类型不能为父类的泛型类型实例化

    原因:子类的泛型不是父类泛型的子类

    例如:String object的子类

    因为有类声明Info<T>,明显 Info<String> 是一个类型,Info<Object>又是另外一种类型,两者毫无关系,不存在extends关系

     

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值