Java面向对象编程:子类、继承与封装
1. 隐藏超类字段
在编程中,有时子类可能会定义与超类中同名的字段,这种情况被称为字段隐藏。
假设 PlaneCircle 类需要知道圆心到原点 (0, 0) 的距离,我们可以添加一个实例字段来保存这个值:
public double r;
在构造函数中添加以下代码来计算该字段的值:
this.r = Math.sqrt(cx*cx + cy*cy); // 勾股定理
这里的新字段 r 与 Circle 超类中的半径字段 r 同名,此时 PlaneCircle 的 r 字段就隐藏了 Circle 的 r 字段。
要引用不同类中的同名字段,可以使用以下方式:
- r 和 this.r :引用 PlaneCircle 类的字段。
- super.r :引用 Circle 类的字段。
- 也可以通过将对象强制转换为适当的超类类型来引用隐藏字段,例如 ((Circ
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



