泛型——设定类型形参的上限。
import java.util.ArrayList;import java.util.List;/** * 泛型——设定类型形参的上限。 * ?类型形参在集合里使用Map<?,?>/List<? extends String> * */abstract class Fruit{abstract void getName();}class orange2 extends Fruit{@Overridevoid getName() {System.out.println("橘子");;}}class banana extends Fruit{@Overridevoid getName() {System.out.println("香蕉");}}class Sell {//类型只能是是 Fruit的子类。public void sellAll(List<? extends Fruit> fruit){for (Fruit fruit2 : fruit) {fruit2.getName();}}}public class Annotation {public static void main(String[] args) {List<Fruit> olist = new ArrayList<Fruit>();olist.add(new orange2());olist.add(new banana());new Sell().sellAll(olist);//橘子 香蕉ArrayList<orange2> o = new ArrayList<orange2>();o.add(new orange2());new Sell().sellAll(o);//橘子}}
?