Creating References Using Inheritance Hierarchies

AP Computer Science A· difficulty 3/5

public class Animal {
    public String name() { return "Animal"; }
}
public class Bird extends Animal {
    public String name() { return "Bird"; }
}
// Usage:
ArrayList<Animal> zoo = new ArrayList<Animal>();
zoo.add(new Bird());
zoo.add(new Animal());
zoo.add(new Bird());
int count = 0;
for (int i = 0; i < zoo.size(); i++) {
    if (zoo.get(i) instanceof Bird) count++;
}
System.out.print(count);

What is printed?

  • A

    3

  • B

    2

    check_circle
  • C

    0

  • D

    1

Explanation

Two Bird instances and one plain Animal. instanceof Bird is true exactly twice.

Want 10 more like this — adaptive to your weak spots?

Related questions