【发布时间】:2017-09-14 19:47:21
【问题描述】:
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 允许增加可见性,那么有两种公开可见的方法吗??
我知道界面是一种解决方案,但还有其他出路吗???
【问题讨论】:
标签: java design-patterns