本帖最后由 武汉分校-小舞 于 2016-9-26 16:13 编辑
面向对象五(下篇)
由就业部王成房老师编写的《趣味Java》更新啦~ 那咱们先来回顾一下上集的剧情: 上集讲到了继承中关于super的问题,super就是集成的最关键的体现之一,为啥?因为每次你创建子类的对象的时候首先访问干嘛?你们回答:通过super();访问父类构造(可以是空参,可以是带参,)而且是必须访问。对你们就记住这个就可以了。
本集剧情: 关于继承中方法的重写 我们下面来看这样几段代码: 以下的代码 中有一个新的东西 叫成员方法,就是以下吃的这个方法,具体请看注释: 我们 在看 下面的代码,以下的代码就是写子类,就上一集说过的继承。 上面有三个类,分别继承了都Human。 我问:那么这些类都具备什么特性?(可以回顾上集剧情) 你们回答:这么简单?直接继承了父类的共有成员(属性,方法都叫成员),只要创建子类的对象就可以调用父类的方法。 我:厉害了,看来为师讲的还是很不错的~ 好不装X了我们继续看代码,依你们所说,我们来造人~ 以上代码 造了三个人出来,而且中国人最长。 那么 现在就调用继承过来的方法。 看红色圈圈的位置,然后看结果: 你们:我擦嘞,都特么馒头啊?你也太扣了吧!! 我:那怎么办? 你们:老司机又开车了了~~~要吃肉肉! 我:好吧那就吃,我改改代码 为师为了满足你们把代码改了下,现在都有肉吃了! 来我们试试调用方法后的结果 好现在 都是鸡腿了,你们满意了? 小明:我要吃北京烤鸭! Jack:我要吃牛排七分熟! Tom:我要吃薯条和可乐! 我:我擦勒,剧情角色也会说话了? 现在就有问题了,每个人都要吃自己想吃的,怎么整呢?父类我再怎么改只能写一种啊! 你们:问我们?你说呢? 好,伟大的java为我们提供了一种机制叫方法的重写,我们来介绍下啥是重写! 先从概念说起:方法的重写,返回值,方法名,参数列表必须一样,这是概念一定记住! 我们来看看代码 以上就是方法重写,有同学就要问了那么我就不这样写会怎么样? 来我们看看: 主要看圈圈的位置 废话 你非不按照概念写 肯定报错啊! 所以我们一定要跟着概念写,死扣概念,就这,然后敲个一两遍就没啥问题了。 然后我们看看 代码重写后 的结果: 这三个人还是调用eat 方法 结果: 好现在 就满意了把你们! 小明:满意! Jack:满意! tom:满意! 我:剧情角色又说话了 @—@ @—@ 好个根据上面的代码我们知道了方法的重写,那么思考下方法重写的正真意义是什么呢?? 你们:吃好吃的,不吃馒头! 我:........................ 重写方法的意义是 让每个类的共同行为承载不一样的内容! 然后大家再想一下重写过后调用方法,调用的是哪一个? 看看代码: 父类方法: 子类的方法: 对应的结果: 那么肯定是调用重写过后的啊 !!你有自己想吃的了你还会吃你爹非要你吃的么??
重点重写的概念: 好以上就是关于重写的小故事,我们学到了重写方法,返回值,方法名,参数列表必须都一样才叫重写,然后承载着不同的方法体(不一样的好吃的),然后重写之后就子类就调用自己重写的了,相当于覆盖。 |