Я работаю над домашним заданием (проектом), для которого одним из критериев является то, что я должен использовать полиморфизм таким образом, чтобы заметно улучшить общее качество или функциональность моего кода.
Я создал хеш-таблицу, которая выглядит следующим образом:
public class HashTable<E extends Hashable>{
...
}
где Hashable - это интерфейс, который я создал и который имеет функцию hash ().
Я знаю, что использование обобщения таким образом улучшает качество моего кода, поскольку теперь HashTable может работать практически с любым типом, который я хочу (например, только с int или Strings). Но я не уверен, что он демонстрирует полиморфизм.
Я думаю, что это так, потому что E может быть любого типа, который реализует Hashable. Другими словами, HashTable - это класс, который может работать (практически) с любым типом.
Но я не совсем уверен - это этот полиморфизм? Возможно, я могу получить некоторые разъяснения относительно того, что именно является полиморфизмом?
Заранее спасибо!
Редактировать: Получив ответ ниже (см .: первый ответ получил ), я прочитал статью в Википедии и наткнулся на это:
"В сообществе объектно-ориентированного программирования программирование с использованием параметрического полиморфизма часто называют универсальным программированием ." (выделение добавлено)