Loading src/main/java/ch10b/BeTheCompiler.java +36 −16 Changes for src/main/java/ch10b/BeTheCompiler.java: 36 added lines, 16 removed lines. Original line number Diff line number Diff line Loading @@ -5,24 +5,44 @@ import java.util.List; public class BeTheCompiler { public static void main(String[] args) { // ArrayList<Dog> dogs1 = new ArrayList<Animal>(); // // ArrayList<Animal> animals1 = new ArrayList<Dog>(); // // List<Animal> list = new ArrayList<Animal>(); // // ArrayList<Dog> dogs = new ArrayList<Dog>(); // // ArrayList<Animal> animals = dogs; // // List<Dog> dogList = dogs; // // ArrayList<Object> objects = new ArrayList<Object>(); // // List<Object> objList = objects; takeAnimals(new ArrayList<Animal>()); // takeDogs(new ArrayList<Animal>()); // // ArrayList<Object> objs = new ArrayList<Dog>(); // takeAnimals(new ArrayList<Dog>()); takeDogs(new ArrayList<>()); List<Dog> dogs = new ArrayList<>(); takeDogs(dogs); takeSomeAnimals(new ArrayList<Dog>()); takeSomeAnimals(new ArrayList<>()); takeSomeAnimals(new ArrayList<Animal>()); List<Animal> animals = new ArrayList<>(); takeSomeAnimals(animals); List<Object> objects = new ArrayList<>(); // takeObjects(objects); // // takeObjects(new ArrayList<Dog>()); takeObjects(new ArrayList<Object>()); } private static void takeDogs(List<Dog> dogs) { // do something } private static void takeAnimals(List<Animal> animals) { // do something } private static void takeSomeAnimals(List<? extends Animal> animals) { // do something } private static void takeObjects(ArrayList<Object> objects) { // do something } } Loading
src/main/java/ch10b/BeTheCompiler.java +36 −16 Changes for src/main/java/ch10b/BeTheCompiler.java: 36 added lines, 16 removed lines. Original line number Diff line number Diff line Loading @@ -5,24 +5,44 @@ import java.util.List; public class BeTheCompiler { public static void main(String[] args) { // ArrayList<Dog> dogs1 = new ArrayList<Animal>(); // // ArrayList<Animal> animals1 = new ArrayList<Dog>(); // // List<Animal> list = new ArrayList<Animal>(); // // ArrayList<Dog> dogs = new ArrayList<Dog>(); // // ArrayList<Animal> animals = dogs; // // List<Dog> dogList = dogs; // // ArrayList<Object> objects = new ArrayList<Object>(); // // List<Object> objList = objects; takeAnimals(new ArrayList<Animal>()); // takeDogs(new ArrayList<Animal>()); // // ArrayList<Object> objs = new ArrayList<Dog>(); // takeAnimals(new ArrayList<Dog>()); takeDogs(new ArrayList<>()); List<Dog> dogs = new ArrayList<>(); takeDogs(dogs); takeSomeAnimals(new ArrayList<Dog>()); takeSomeAnimals(new ArrayList<>()); takeSomeAnimals(new ArrayList<Animal>()); List<Animal> animals = new ArrayList<>(); takeSomeAnimals(animals); List<Object> objects = new ArrayList<>(); // takeObjects(objects); // // takeObjects(new ArrayList<Dog>()); takeObjects(new ArrayList<Object>()); } private static void takeDogs(List<Dog> dogs) { // do something } private static void takeAnimals(List<Animal> animals) { // do something } private static void takeSomeAnimals(List<? extends Animal> animals) { // do something } private static void takeObjects(ArrayList<Object> objects) { // do something } }