Обобщенные классы
Обобщенные методы
Принцип подстановки