JavaRush /Java Blog /Random-TW /Pet cat = new Cat() - 「cat」變數可以使用哪些方法?
vtimk
等級 17

Pet cat = new Cat() - 「cat」變數可以使用哪些方法?

在 Random-TW 群組發布
親愛的 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(); } 請告訴我將為 cat 變數呼叫哪個版本的 getString() 方法?我在講座中讀到,只有當物件的方法存在於用作物件的引用類型的類別中時,才可以呼叫該物件的方法,而不管物件的實際類型如何。這是否意味著在這種情況下將呼叫 Pet 類別中的方法,或者在重寫該方法的情況下將呼叫物件類別中的方法?謝謝。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION