重写与重载

这个是我最开始混淆的问题,我的结论居然笑掉了大牙。说明我从本质上没有理解两者之间的概念。

现在重新的缕一下。

重写:方法名必须相同,构造函数(参数)必须相同。(覆盖)

重载:方法名必须相同,构造函数(参数)必须不同。

这是两者的本质含义,后来一个朋友给我举了一个例子,很贴切,也能更好的理解。



转自诺的例子:

你爸爸有一栋房子,你继承了你父亲的房子,你父亲拥有房子的时候,规定,卫生间只能进男人,但是当你继承的时候,感觉这个制度不适合你用,于是就改为,卫生间任何人都可以进入,别的规则则保留。这就是重写。因为房子还是房子,卫生间还是卫生间,只是改了里面规则,就如改了方法体一样,也叫作覆盖。

保留原来可以用的,改了不适合自己的。



重写是父子类之间的,也就是说两个类之间,而重载,是在一个类中,比如:构造方法,无参构造和有参构造,难道这个有参构造把参数去掉就是重写无参构造吗?答案是:那就报错了

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值