Правильно ли я понял как работает вызов метода из ссылки типа родительского класса?
Когда вызывается метод из ссылки типа родительского класса, то компилятор проверяет сначала описан ли такой метод в типе ссылочной переменной, а затем проверяет есть ли такой метод в объекте на который ссылается переменная. Если в объекте метод переопределен, то вызывается именно этот метод, если нет, то метод описанный в типе ссылочной переменной. Верно?
Понятно, а если вызывается метод из ссылки типа родительского класса, которого в этом классе нет, но есть в объекте на который ссылается переменная, то будет ошибка во время компиляции?