Привет, я просто хотел предпринять следующее поведение ..
Я определил один и тот же метод - gg () в базовом и производном классе с разным доступом
Class Base
{
// some thing
**private** Integer gg(){
//return something
}
}
Class Derived{
// something
**public** Integer gg(){
//return something
}
}
В моем основном методе, когда я инициализирую переменную
Base d = new Derived()
и попытка вызвать d.gg () говорит, что Base.gg () является приватным. Приводит ли изменение спецификатора доступа к вызовам метода к методу базового класса? Когда я изменяю спецификатор доступа gg () в базовом классе на public, он вызывает метод в производном классе так же, как и полиморфизм.
Из того, что я читал о полиморфизме, можно сделать спецификатор доступа менее строгим в производном классе, как здесь.