Я понимаю, что параметрический полиморфизм - это метод, который позволяет единообразные действия над множеством данных (типов). Правильно ли я знаю?
Является ли этот пример параметрическим полиморфизмом? Я считаю, что с тех пор, как Animal.talk позволяет говорить, что называется, несмотря на определенный тип животных (Cat или Dog).
public interface Animal
{
public String talk();
}
public class Cat implements Animal
{
public String talk()
{
return "Cat says Meow!";
}
}
public class Dog implements Animal
{
public String talk()
{
return "Dog says Woof! Woof!";
}
}
import java.util.*;
public class PolymorphismExample
{
public static void main(String[] args)
{
Collection<Animal> animals = new ArrayList<Animal>();
animals.add(new Cat());
animals.add(new Dog());
for (Animal a : animals)
{
System.out.println(a.talk());
}
}
}
С уважением.
edit: если мой пример не показывает специфический параметрический полиморфизм, пожалуйста, вы можете его предоставить? спасибо.