Это не "создание объекта через родителя". Создание во всех случаях происходит одинаково. Здесь ссылка на ребенка сохраняется в переменную типа родителя. В этом, типа, и заключается динамический полиморфизм. Смысл в том, что ты можешь разных, заранее не определенных детей, складывать в коллекцию с типом родителя, например. Или принимать и возвращать из методов - тоже родителя, а не конкретных детей.
Зачем? Например, у тебя есть объект клетка, который содержит животное. Условно, ты не должен делать разные клетки - PigCage, DogCage, CatCage, а должен использовать одну.