A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© huangxuanheng 中级黑马   /  2014-8-6 21:12  /  2152 人查看  /  28 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 huangxuanheng 于 2014-8-7 21:53 编辑

有时候在编写代码,总发现很多人在继承某个类时,总喜欢调用supper,但我不用supper也能同样达到一样的效果,但是为什么大家都喜欢使用supper呢?

28 个回复

倒序浏览
你不用supper你是怎么做到的?   用supper你不感觉简单明了么?
回复 使用道具 举报
举个例子。。。
回复 使用道具 举报
aiq黑马程序员 发表于 2014-8-6 21:13
你不用supper你是怎么做到的?   用supper你不感觉简单明了么?

我在做简单的控件事件时,就不用supper啊,但视频中确实用了supper,但做出的效果是一样的
回复 使用道具 举报

子类一定要访问父类中的构造函数,因为父类中的数据子类可以直接获取,所以子类对象在建立时,需要先查看父类是如何对这些数据进行初始化的,所以子类在对象初始化时 ,要先访问一下父类中的构造函数! 子类的所有的构造函数,默认都会访问父类中空参数的构造函数。即子类每一个构造函数内的第一行都有一句隐式super(), 所以写不写没有区别!但是当父类中没有空参数的构造函数时,子类必须手动通过super语句形式来指定要访问父类中的构造函数,否则会编译失败。

QQ截图20140806214512.png (76.92 KB, 下载次数: 24)

QQ截图20140806214512.png
回复 使用道具 举报 1 0
supper???还是 super
回复 使用道具 举报
super和this有个最本质的区别,super是静态绑定的,不具有多态性。
回复 使用道具 举报
用supper有时候能更简便一些
回复 使用道具 举报
zhxu188 发表于 2014-8-7 09:53
用supper有时候能更简便一些

为什么都写supper。。。不是super么。。。
回复 使用道具 举报
star5603 发表于 2014-8-7 10:00
为什么都写supper。。。不是super么。。。

好吧,被误导了....

点评

这都能被误导。 黑马币 -5  发表于 2014-8-7 15:37
回复 使用道具 举报
貌似supper 指得是父类,   实际还是用的super  ,没搞懂楼主的意思,  有代码 有真相,不放代码,看个甚
回复 使用道具 举报
有些地方不写,是有默认的。
回复 使用道具 举报
多了个屁,哦不对,是p
回复 使用道具 举报
supper是调用继承的父类中的方法,成员变量,用了super就可以在子类中创建新方法的部分功能与父类中的一样时,直接调用,而不用复写
回复 使用道具 举报
即使不显示调用super,编译器也会默认一个空参数的super语句,另外,既然实现相同的功能,用super可以提高代码的重用性。
回复 使用道具 举报
用super不是代码简洁明了吗
回复 使用道具 举报
因为会有隐式默认的super去访问父类
回复 使用道具 举报
继承中super和this是相对的,this是经常用的,super我也不是经常见到,更很少用了,就当当学习时学到了。
回复 使用道具 举报
你不写supper();   程序默认给你加上
回复 使用道具 举报
会默认给你加上的
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马