? = Используется для приведения типа ссылки на объект унаследованного класса на объект суперкласса, из которого он получен.
? =
Приведение типов помогает вам ссылаться на несколько ссылок на объекты подклассов, тип которых разрешается только во время выполнения. Ссылка на объект родительского класса может содержать объекты, и часто существует метод родительского класса, который можно использовать для определения того, какой объект подкласса содержит ссылка приведения типа во время выполнения.