Polymorphism ("nhiều hình thái") cho phép một interface duy nhất làm việc với các kiểu nền tảng khác nhau. Cùng một lời gọi chạy code khác nhau tùy thuộc vào object thực tế — được chọn lúc runtime. Đây là subtype polymorphism.
Một lời gọi, nhiều hành vi
{ String { ; } }
{ String { ; } }
{ String { ; } }
Animal[] zoo = { (), () };
(Animal a : zoo) {
System.out.println(a.speak());
}
