Шановні Java'рашівці, припустимо, є код, в якому перевизначається метод у спадковому класі:
class Pet { String name; String age; String getString() { return "Домашнее животное"; } } class Cat extends Pet { String getString() { return "Кот Рыжик"; } } public static void main(String[] args) { Pet cat = new Cat(); cat.getString(); }
скажіть будь ласка, який варіант методу getString() буде викликаний для змінної cat? У лекціях прочитав, що можна викликати методи об'єкта, тільки якщо вони присутні в класі, який використовувався як тип посилання на об'єкт, не дивлячись на фактичний тип об'єкта. Чи означає це, що в даному випадку буде викликаний метод із класу Pet або ж у разі перевизначення методу викликається метод із класу об'єкта? Дякую.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ