Java 泛型之无界通配符 ?

Java中无界通配符分类:

  1. 上界通配符 < ? extends E>
  2. 下界通配符 < ? super E>

说明如下:

< ? extends E>

上届:如何上?extends 就是父类与子类 都可以作为形参传入。

举个例子

设计模式中我们经常提到:职责单一原则。就是我们把一段公共的逻辑封装起来,共其他接口复用。避免写重复代码。

封装肯定会想到方法的封装,伴随着就会方法的入参。也就所谓的形参。

那就看段代码

public static void main(String[] args) {
    
        子类名 子对象 = new 子类名();
        子对象.setSaleOrg("sssss");
        子对象.setProjectId("1111");
        子对象.setProjectName("song");
        List<子对象> 子对象集合 = new ArrayList<>();
        子对象集合.add(子对象);
        ssss(子对象集合,子对象);

    }
    
/**
公共的逻辑处理,子类可以往下传参
**/
    public static void ssss(List<? extends 父类Base> 父类Bases变量,父类Base 父类Base) {
        for (父类Base base : 父类Bases变量) {
            System.out.println(base.toString());
        }
    }

 public static void 编译不通过的函数(List<父类Base> 父类Bases变量,父类Base 父类Base) {
        for (父类Base base : 父类Bases变量) {
            System.out.println(base.toString());
        }
    }

< ? super E>

下界: 用 super 进行声明,表示参数化的类型可能是所指定的类型,或者是此类型的父类型,直至 Object

这个就不举例了哈

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SteveCode.

永远年轻,永远热泪盈眶

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值