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