Правильно ли я понял, что: при переопределении метода Z( ) наследуемого класса, если реализация этого метода в классе-наследнике не отличается от родительской (притом что родительский класс не абстрактный и не интерфейс), то во время вызова метода Z( ) в классе-родителе (не через this.) фактически будет вызван "переопределенный" метод Z( ) класса-наследника. Или правильно - ТОЛЬКО: "Главное, не в каком классе написан метод, а какой тип (класс) объекта, у которого этот метод вызван." Т.е. при новом объекте new B(6); вызывается родительский класс super(f1);, методы которого ПО-УМОЛЧАНИЮ будут иметь реализацию класса-наследника. Что из этого правильно ?