Saya memanggil metode yang dilindungi kelas super dari subkelas. Mengapa metode ini "tidak terlihat"?
Saya telah membaca beberapa postingan seperti yang ini, sepertinya bertentangan dengan hal-hal berikut:
Kelas super:
package com.first;
public class Base
{
protected void sayHello()
{
System.out.println("hi!");
}
}
Subkelas:
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" ?!?
}
}