java中 什么叫隐藏

 我来答
百度网友b62111d0
2017-07-06 · TA获得超过414个赞
知道小有建树答主
回答量:537
采纳率:88%
帮助的人:151万
展开全部

技术核心和实例前面已经给出,这里只是给出大家对这种现象的一个定义而已,马克-to-win:子类重新定义一个与父类那里继承来的域变量完全相同的变量,称为域的隐藏。
这里所谓隐藏是指子类拥有了两个相同名字的变量,一个继承自父类,另一个由自己定义。当子类执行父类的方法时,处理的是父类的变量,而当子类执行它自己定义的方法时,所操作的就是它自定义的变量,而把继承自父类的变量“隐藏”起来了。
上面说的是一般的情况,子类方法操作子类的变量。其实,也可以子类的方法通过super操作父类的成员变量。

下面的例子当中,就分新卡和老卡,this获取新卡的余额,super获取老卡的余额。
例1.4.1
class HealthCardM_t_w {
double balance = 90;
double getBalance() {
return this.balance;
}
}

class New_Card extends HealthCardM_t_w {
double balance; // 隐藏父类的balance
public New_Card(int in) {
balance = in;
}
double getOldBalanceInNew_Card() {
return super.balance;
}
double getOldBalanceByMythodInNew_Card() {
return super.getBalance();
}
double getThisBalanceInNew_Cardget() {
return this.balance;
}
}

public class Test {
public static void main(String args[]) {

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式