java~PECS原则

pecs

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

代码

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

具体说明

上界通配符(Upper Bounded Wildcards)
图片.png

下界通配符(Lower Bounded Wildcards)
图片.png

总结

  • 如果要从集合中读取类型T的数据, 并且不能写入,可以使用 上界通配符(<?extends>)—Producer Extends。
  • 如果要从集合中写入类型T 的数据, 并且不需要读取,可以使用下界通配符()—Consumer Super。
  • 如果既要存又要取, 那么就不要使用通配符。

只要一步一个脚印,水滴石穿,吃透、搞懂、拿捏住是完全没有问题的!看到这里的都是妥妥的铁粉无疑了,底下是微信,找到的可是有大把源码,学习路线思维导图啥的,多的我就不透露,539413949看大家自己的积极性了啊,热爱所热爱的,学习伴随终生


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部