Cri*_*utu 1 java oop inheritance overriding private
我的Java书有以下练习问题:
public class Person(){...}
public class Teacher extends Person{...}
Run Code Online (Sandbox Code Playgroud)
并询问以下哪项是正确的陈述:
1:教师继承的构造函数Person。
2:教师可以添加新方法和私有实例变量。
3:教师可以覆盖的现有私有方法Person。
这本书说2和3是正确的。我说只有2个是对的。
我读过,子类确实继承了私有方法和成员字段,但不能直接访问它们。所以我的问题是,如果无法直接访问现有的私有方法,它将如何覆盖它们?如果有人有充分理由将私有方法私有化,为什么还要覆盖私有方法呢?
3:教师可以覆盖Person的现有私有方法。
错了
父类的私有方法/字段不可见/无法继承到子类。因此,您不能覆盖它们。
尝试一个例子