你不能覆盖私有方法,但可以毫无问题地在派生类中引入一个私有方法。这样可以编译:
class base{ private void foo() { }}class Child extends base{ private void foo() { }}请注意,如果你尝试将
@Override注释应用于该对象,
Child.foo()则会出现编译时错误。只要你有你的编译器/ IDE设置,给你警告或错误,如果你缺少一个
@Override注释,都应该很好。诚然,我更喜欢将C#方法
override用作关键字,但是用Java显然已经太晚了。
至于C#对“覆盖”私有方法的处理-私有方法最初不能是虚拟的,但是你当然可以在基类中引入一个与私有方法同名的新私有方法。



