?extends T、?super T区别

// ?extends T 该中的T表示上界 参数化类型必须比T更形象化  只能往外取,不能往里面存
// 错误写法 List list =new ArrayList();
List list =new ArrayList();
Number number = list.get(0);
// list.add();
// ?super T 该中的T表示下界 参数化类型必须比T更为抽象  不影响往里面存,但往外取只能放在Object对象中
// 错误写法 List list1 =new ArrayList();
List list1 =new ArrayList();
list1.add(new Integer(12));
Object object = list1.get(0); 
  

参考文档:https://blog.csdn.net/notonlyrush/article/details/72810411

你可能感兴趣的:(Java)