为什么Java指定覆盖方法的访问说明符可以允许比重写方法更多但不是更少的访问?例如,超类中的受保护实例方法可以在子类中公开,但不是私有的.
有没有理由可以更改被覆盖方法的访问修饰符?例如,
abstract class Foo{
void start(){...}
}
Run Code Online (Sandbox Code Playgroud)
然后将package-private访问修饰符更改为public,
final class Bar extends Foo{
@Override
public void start(){...}
}
Run Code Online (Sandbox Code Playgroud)
我只是出于好奇而问这个问题.