// generics/GenericWriting.java // (c)2016 MindView LLC: see Copyright.txt // We make no guarantees that this code is fit for any purpose. // Visit http://mindviewinc.com/Books/OnJava/ for more book information. import java.util.*; public class GenericWriting { static void writeExact(List list, T item) { list.add(item); } static List apples = new ArrayList<>(); static List fruit = new ArrayList<>(); static void f1() { writeExact(apples, new Apple()); writeExact(fruit, new Apple()); } static void writeWithWildcard(List list, T item) { list.add(item); } static void f2() { writeWithWildcard(apples, new Apple()); writeWithWildcard(fruit, new Apple()); } public static void main(String[] args) { f1(); f2(); } }