一道面向对象的题目
java吧
全部回复
仅看楼主
level 8
未完成的歌12
楼主
2013年08月18日 03点08分
1
level 8
未完成的歌12
楼主
大神速来,求解释一下
2013年08月18日 03点08分
2
level 8
未完成的歌12
楼主
2013年08月18日 04点08分
3
level 10
小卡卡星
A
2013年08月18日 04点08分
4
未完成的歌12
E
2013年08月18日 04点08分
小卡卡星
回复 未完成的歌12 :
求解,没看出错
2013年08月18日 04点08分
未完成的歌12
回复 小卡卡星 :我不知道才问
2013年08月18日 05点08分
未完成的歌12
回复 小卡卡星 :7楼
2013年08月18日 05点08分
level 11
yszhangwb
我选。。A
2013年08月18日 04点08分
5
未完成的歌12
E编译错误
2013年08月18日 04点08分
yszhangwb
回复 未完成的歌12 :构造方法有问题么?
2013年08月18日 04点08分
yszhangwb
回复 未完成的歌12 :是不是public……子类权限……
2013年08月18日 04点08分
未完成的歌12
回复 yszhangwb :这个我详细的看了下类的继承貌似没关系呢
2013年08月18日 04点08分
level 9
疣猪
我也选A
2013年08月18日 04点08分
6
未完成的歌12
我选的也是A啊
2013年08月18日 04点08分
疣猪
回复 未完成的歌12 :又看了遍貌似不对 需要在子类构造方法中添加super调用父类 的构造方法 就可以输出答案A了
添加super(s);在子类构造方法第一句 -但如果是构造方法是没有参数的 就不需要添加super 并且创建对象时不赋予值 就不会错误就会输出答案A了
2013年08月18日 05点08分
疣猪
原因-如果子类构造方法中没有super或者this 那么系统在执行子类构造器之前 隐式调用父类 无参数的构造器
2013年08月18日 05点08分
未完成的歌12
回复 犹猪 :题目太猥琐了 概念我懂的 做的时候没察觉
2013年08月18日 06点08分
level 12
God丶救赎
应该是E 因为父类不是默认的构造函数,需要在子类的构造函数里面添加super(s);
2013年08月18日 04点08分
7
疣猪
哪有e选项
2013年08月18日 04点08分
God丶救赎
回复 犹猪 :仔细看图啊、小图被水印挡到了
2013年08月18日 04点08分
未完成的歌12
回复 God丶救赎 :谢大神 懂了
2013年08月18日 05点08分
havsb
谢大神 懂了
2013年08月18日 06点08分
level 9
未定义0829
class Top 没写默认的构造方法(无参的)
2013年08月18日 04点08分
8
未完成的歌12
谢大神
2013年08月18日 05点08分
level 11
肥瓢虫
E,继承父类,子类构造方法中隐含了super(),而父类构造方法是有参的,所以不新建无参构造方法,是肯定调用不到的,会出错
2013年08月18日 04点08分
9
未完成的歌12
谢大神
2013年08月18日 05点08分
肥瓢虫
回复 未完成的歌12 :
2013年08月18日 05点08分
wsll333
无参才可以?能不能再解释下???
2013年08月18日 05点08分
肥瓢虫
回复 wsll333 :因为子类中的构造方法会隐藏一个super(),是调用父类中无参的构造方法。如果在父类没有定义构造方法,会存在一个隐藏的无参构造方法,如果定义个一个有参构造方法,那个隐藏的无参就不存在,必须自己写一个,不然就会出现上面的结果
2013年08月18日 05点08分
level 12
怒指天空
我觉得是编译失败。。。
2013年08月18日 04点08分
10
level 1
qr_200994870
E
2013年08月18日 05点08分
11
level 10
zhoudailiang
受教了
2013年08月18日 05点08分
12
level 1
失去翅膀的羊
2013年08月18日 05点08分
13
level 8
duk_merlini
2013年08月18日 05点08分
14
level 7
一路向甜💢
楼上都说了,补充一点,就是父类如果你没有写任何构造方法,它会自动创建一个无参的构造方法,但是如果你写了其他的任何构造方法,系统就不会自动帮你创建无参的构造方法。所以这个,如果你把那个有参数的构造方法删除掉的话,编译就通过了。
2013年08月18日 05点08分
15
ybb2217
为啥调用不到父类的构造方法的话就会出错呢?
2013年08月18日 06点08分
未完成的歌12
回复 ybb2217 :因为它默认会有一个super(),而这个super调用不到父类构造方法
2013年08月18日 06点08分
ybb2217
回复@未完成的歌12 :我的意思是 一定要调用父类的构造方法?调用不到就会出错??
2013年08月18日 06点08分
未完成的歌12
回复 ybb2217 :问题是它已经调用了,首先子类必须重写父类的构造方法,只要一new【不管子类父类】就自动调用了父类的构造方法了
2013年08月18日 06点08分
level 11
le12380
父类没有写无参数构造函数。。。
2013年08月18日 06点08分
16
level 11
726557704
学习了,贴吧应该多些这样交流的帖子,巩固了知识点
2013年08月18日 06点08分
17
level 13
📸菜园子码农📸
虽然猜到有陷阱,还是选了A。。
2013年08月18日 06点08分
18
level 12
1008丶me
确定能编译成功?
2013年08月18日 07点08分
19
1
2
尾页