前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java中 什么叫隐藏(Hide)? 最好给个例子

java中 什么叫隐藏(Hide)? 最好给个例子

作者头像
马克java社区
修改2021-03-25 09:51:10
1.2K0
修改2021-03-25 09:51:10
举报
文章被收录于专栏:java大数据

4.隐藏  

技术核心和实例前面已经给出,这里只是给出大家对这种现象的一个定义而已,马克-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[]) {

        New_Card myNewCard = new New_Card(500);

/* 对象myNewCard有两个balance变量,一个继承自父类,另一个是自定义的。*/

        System.out.println("马克-to-win " + myNewCard.getThisBalanceInNew_Cardget());

        System.out.println("马克-to-win " + myNewCard.getOldBalanceInNew_Card());

        System.out.println("马克-to-win " + myNewCard.getOldBalanceByMythodInNew_Card());

        System.out.println("马克-to-win " + myNewCard.getBalance());

    }

}

 

更多请见:https://blog.csdn.net/qq_44639795/article/details/103121805

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档