网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月07日
漏签
0
天
java吧
关注:
1,242,248
贴子:
12,714,320
看贴
图片
吧主推荐
视频
游戏
1
2
下一页
尾页
36
回复贴,共
2
页
,跳到
页
确定
<返回java吧
>0< 加载中...
新人请教各位大佬个问题,就是方法重写的意义是什么
只看楼主
收藏
回复
违禁字符
淼淼
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
既然要沿用父类的方法格式为啥不直接定义个新方法名,然后用super关键字调用父类方法再修改,反而要定义个一样的方法名呢?我自己试了下,在子类中新定义个方法,然后在这个方法中通过super一样可以调用父类的方法,在这个基础上再进行修改也是可以呀?方法名相同难度不会混淆?重载我理解,重写实在难以理解
送TA礼物
IP属地:山东
1楼
2022-03-27 11:54
回复
小千代
淼淼水
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
前面学这个主要是要你明白原理和怎么去用,到后面的高级阶段,只有你经历过了,你就明白为什么了
IP属地:河南
来自
Android客户端
2楼
2022-03-27 12:43
回复(1)
收起回复
xjhqre0
淼淼水
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
难道不是重写更方便,可读性更高?
IP属地:上海
来自
Android客户端
5楼
2022-03-27 12:49
回复
收起回复
谁将新樽盛旧
水
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
举例,父类有画形状这个虚函数,2个子类分别是画矩形和三角形,重写了画形状,调用父类画形状时就分别画出了矩形和三角。
IP属地:上海
来自
iPhone客户端
6楼
2022-03-27 12:52
回复(2)
收起回复
卖大爷的五花肉
淼淼水
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
送一个词:省事
IP属地:甘肃
来自
Android客户端
8楼
2022-03-27 13:13
回复
收起回复
看星星的鱼
淼淼淼水
10
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
super是可以调用父类方法,但是此时父类方法完全执行,如果是想变更方法内部的代码呢,改变逻辑呢?就不行了,方法名相同不会混淆,你是疑惑调用方法时实际执行的父类还是子类方法吧,这个就看调用方法的对象了,根据你new出来的对象确定,父类对象就父类方法,子类就子类方法
IP属地:浙江
来自
Android客户端
9楼
2022-03-27 13:15
回复(3)
收起回复
回首山河旧
淼淼淼淼
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
就拿list接口来说jdk中大部分用的是接口,但与继承有一定的相似。你一个方法需要传入list,但我不知道你用的Arraylist还是linkedlist,但两种都能符合我的要求去操作,按你这么说Arraylist与linkedlist不去实现list接口,用自己写的新方法的话,那我就得写两个方法,一个传Arraylist另一个linkedlist。
IP属地:四川
来自
Android客户端
11楼
2022-03-27 13:49
回复(2)
收起回复
贴吧用户_QKaG1MS
淼淼
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
因为是面向接口编程,引用都是父类或者接口。高层完全不关心底层的具体实现,如果一个父类扩展了很多子类,对于同样的功能底层定制化重写父类方法,那么调用不同子类的同样功能用的都是一个方法名,你每个子类写不同方法名调用就很麻烦,而且多态就用处不大了。
IP属地:上海
来自
Android客户端
12楼
2022-03-27 14:12
回复(1)
收起回复
贴吧用户_0GQUWeE
司马沝
14
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
举个例子,Person里有个readbook方法,子类Student里有个study方法调了super.readbook。看起来是没问题的对吧。
Person p=new Student() 你给我调一个study方法给我看看哈
IP属地:辽宁
来自
Android客户端
13楼
2022-03-27 14:19
回复
收起回复
灬午夜月之主
淼淼淼
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
面向对象的多态,需要学习一个
IP属地:四川
来自
Android客户端
14楼
2022-03-27 15:26
回复
收起回复
洛克人杰洛
淼淼淼沝
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
学到多态了没有?
IP属地:广东
来自
Android客户端
16楼
2022-03-27 17:37
回复(4)
收起回复
寒暄125968
淼淼淼
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
子类调用父类方法,然后在这个基础上再修改?咱还真不知道怎么在调用父类方法的过程中修改方法,能不能你给我讲解一下?方法重写不就是修改父类方法吗?子类重写父类方法,都是为了更具体的实现,java是多继承,一个父类可以有很多子类,要是这些方法名随便起,怎么一眼看出来它是谁的子类继承了哪个方法?难道都一个个点进去看继承了xx的xx方法?要是没有开发工具点不进去呢?一个个看代码?
IP属地:江西
来自
Android客户端
17楼
2022-03-27 21:48
回复(1)
收起回复
llxxcm_
水
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
java的重写
本质上是为了定义接口
而接口,本质上就是一套规范
现在我需要一个直径3cm的螺丝
你可以铅工把它撮出来
你可以数控机床给它加工出来
你甚至可以3D打印做出来
怎么实现我不管,只要你满足我定义的这个“直径3cm”的规范
我就能用它去拧在一个3cm的螺母上
这里,钳工、机床、3D打印都重写了“直径3cm”这个父类方法,拧在螺母里,就是调用这个公共的方法
在拧上去的时候,你根本不用管它是怎么实现的,因为满足了要求的规范
IP属地:上海
来自
Android客户端
18楼
2022-03-28 00:44
回复
收起回复
llxxcm_
水
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
java的重写
本质上是为了定义接口
而接口,本质上就是一套规范
现在我需要一个直径3cm的螺丝
你可以铅工把它撮出来
你可以数控机床给它加工出来
你甚至可以3D打印做出来
怎么实现我不管,只要你满足我定义的这个“直径3cm”的规范
我就能用它去拧在一个3cm的螺母上
这里,钳工、机床、3D打印都重写了“直径3cm”这个父类方法,拧在螺母里,就是调用这个公共的方法,拧上去的动作就是方法名
在拧上去的时候,甚至你可以交给一个盲人去拧,这个盲人根本不知道手里的螺丝是哪一种,但是他可以通过一个相同的拧螺丝姿势把螺丝拧好,因为三种螺丝都满足了要求的规范
IP属地:上海
来自
Android客户端
19楼
2022-03-28 00:50
回复
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
素食吧头像变长崎素世
2582370
2
哪吒2为何能拿下电影票房之首
2484285
3
当DeepSeek下棋学会盘外招
2108064
4
家长把手办和NS扔了
1533492
5
《海贼王》1139话情报贾巴登场
1158118
6
崩铁阿格莱雅强度如何?
988625
7
电影拍太烂竟成为绝版
806952
8
泰缅边境地区断电后现状如何
659387
9
具俊晔宣布放弃大S遗产
538780
10
哪吒2能打破多少记录
442995
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示