Я вызываю защищенный метод супер класса из подкласса. Почему этот метод «невидим»?Java: вызов защищенного метода супер класса из подкласса - не видно?
Я читал некоторые сообщения, такие как this one, которые кажутся противоречащими следующее:
Супер класс:
package com.first;
public class Base
{
protected void sayHello()
{
System.out.println("hi!");
}
}
Подкласс:
package com.second;
import com.first.Base;
public class BaseChild extends Base
{
Base base = new Base();
@Override
protected void sayHello()
{
super.sayHello(); //OK :)
base.sayHello(); //Hmmm... "The method sayHello() from the type Base is not visible" ?!?
}
}
Но он расширяет базу – rapt
http://stackoverflow.com/a/19949354/868975 – Bax
То же, что и этот, возможно: http://stackoverflow.com/questions/36093187/accessing-protected-member-of-static- class-in-subclass-of-the-parent # comment59830891_36093187 – aioobe