Вопрос про наследование переменных
public class Solution {
String name = "Solution";
public void method() {
System.out.println("Solution");
}}
public static void main(String[] args) throws Exception {
Solution solution = new Animal();
System.out.println(solution.name); //на экран выводится Solution. Почему не animal?
}
class Animal extends Solution {
String name = "animal";
public void method() {
System.out.println("animal");
}}
Если вызвать метод (method) у переменной solution, то на экране будет animal - с этим вопросов нет я знаю почему так происходит. Но вот с переменной name не могу разобраться. Почему происходит обратное?