На практике применяется.
Например есть какой-то метод, который что-то делает с объектами типа Man и Robot.
И вот чтобы не писать два метода, которые, по сути делают одно и тоже, можно попробовать сделать метод унифицированный, в котором, возможно, понадобится преобразование типов (с предварительной проверкой через instanceof).