在 Java 中,private 方法不能被重写(override),原因如下:
private 方法只对当前类可见,子类根本“看不到”这个方法。class Parent {
private void show() {
System.out.println("Parent");
}
}
class Child extends Parent {
// 这不是重写,只是一个新的 private 方法
private void show() {
System.out.println("Child");
}
}
Child.show() 不会覆盖 Parent.show()Parent.show()(如果可见)final、static 的区别private 方法隐式就是 final 的(不能重写)static 方法也不能重写(只能隐藏)✅ private 方法:不能重写
✅ 子类写同名方法:只是隐藏/新建方法,不是多态
✅ 若想让子类重写:用 protected 或 public
如果你是想问 “子类能不能定义一个和父类 private 方法同名的方法”,答案是:可以,但不是重写。
需要我对比 private / protected / public 的重写规则吗?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。