В каких случаях требуется подменить один класс другим в Java

JavaЗамещение классовООППаттерны проектированияПолиморфизм