java~PECS原则


pecs

  • 全称是Producer Extends Consumer Super
  • 使用extends确定上界的只能是生产者,只能往外生产东西,取出的就是上界类型。不能往里塞东西。
  • 使用Super确定下界的只能做消费者,只能往里塞东西。取出的因为无法确定类型只能转成Object类型看代码更好理解。

代码

List<? extends Number> numbers = new ArrayList();
numbers.add(4); //报错
Number number = numbers.get(1);//成功

List<? super Number> strs = new ArrayList<>();
strs.add(123);//成功
Number o = strs.get(1);//报错

具体说明

上界通配符(Upper Bounded Wildcards)
java~PECS原则
下界通配符(Lower Bounded Wildcards)
java~PECS原则

原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/244281.html

(0)
上一篇 2022年4月16日
下一篇 2022年4月16日

相关推荐

发表回复

登录后才能评论