Вы не можете.Когда вы используете ключевое слово override
, вы указываете компилятору разрешить изменение унаследованного метода в вашем подклассе.Это означает, что экземпляры подкласса не будут знать о реализации переопределенного метода суперкласса.
Даже если вы приведете экземпляр Subclass
к Superclass
, фактический тип экземпляра все равно будет Subclass
, поэтому, если вы выполните (instance as Superclass).method()
, он все равно выполнит переопределенный метод.
Если вы хотите иметь возможность вызывать реализацию суперкласса из ваших экземпляров Subclass
, вам нужно будет создать другую функцию дляSubclass
вместо переопределения method
из Superclass
.