abstract class Base{
protected abstract void a();
}
class Child extends Base{
@Override
public void a(){
//why is this valid
}
}
为什么我们不能降低能见度,但可以增加它?
我还需要实现模板模式,其中可见的公共方法只能是基类。
例子:
abstract class Base{
public void callA(){
//do some important stuff
a();
}
protected abstract void a();
}
class Child extends Base{
@Override
public void a(){
//why is this valid
}
}
现在如果 java 允许增加可见性,那么有两种公开可见的方法?
我知道界面是一种解决方案,但还有其他出路吗???