Мой код:
class Foo {
public int a=3;
public void addFive() {
a+=5;
System.out.print("f ");
}
}
class Bar extends Foo {
public int a=8;
public void addFive() {
this.a += 5;
System.out.print("b ");
}
}
public class TestClass {
public static void main(String[]args) {
Foo f = new Bar();
f.addFive();
System.out.println(f.a);
}
}
Вывод:
b 3
Пожалуйста, объясните мне, почему вывод для этого вопроса "b 3", а не "b 13", поскольку метод был переопределен?