Почему мы можем уменьшить видимость свойства в расширенном классе?
У меня есть два класса,Parent
:
public class Parent {
public String a = "asd";
public void method() {
}
}
А такжеChild
:
public class Child extends Parent{
private String a = "12";
private void method() {
}
}
ВChild
Я пытаюсь переопределить родительmethod
что дает ошибку времени компиляцииcannot reduce visibility of a method
что хорошо
Но почему эта ошибка не относится к собственностиa
? Я также уменьшаю видимостьa
, но это не дает ошибки.