子类是否继承私有字段:一个 Java 难题
在 Java 中,继承的概念通常很简单。然而,子类中的私有字段这个话题引入了一些歧义。
问题:
子类是否从父类继承私有字段?
初步回答:
基于“正常面向对象编程的“OOP方式”,答案是否定的。子类通常无法访问私有字段。
Java 文档:
Java 语言规范 (JLS) 指出“声明为私有的类的成员不会被继承按该类的子类。”
面试官的论点:
尽管引用了 JLS,但有些人可能会认为私有字段是由子类继承的,尽管是间接继承。他们声称这些字段存在于子类对象中,可以通过反射或其他方式访问。
支持面试官的论点:
JLS 的澄清:
这里的关键区别是对象继承和继承之间的区别对于类。
结论:
虽然子类的对象从父类继承私有字段,但子类本身继承私有字段不是。对象级继承和类级继承之间的区别对于理解 Java 的继承模型至关重要。尽管采访者提出了论点,但 JLS 就此事提供了明确的定义。
以上是Java子类继承私有字段吗?的详细内容。更多信息请关注PHP中文网其他相关文章!