JavaRush /Java 博客 /Random-ZH /Pet cat = new Cat() - “cat”变量可以使用哪些方法?
vtimk
第 17 级

Pet cat = new Cat() - “cat”变量可以使用哪些方法?

已在 Random-ZH 群组中发布
亲爱的 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