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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zclove898 高级黑马   /  2011-12-7 17:08  /  3144 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 zclove898 于 2011-12-7 19:47 编辑

   构造函数之间的互相调用和一般函数之间的相互调用方法一样吗?

评分

参与人数 1技术分 +1 收起 理由
admin + 1 问题已解决,可以把你的答案也给大家分享下.

查看全部评分

4 个回复

倒序浏览
本帖最后由 应国炎 于 2011-12-7 17:31 编辑

构造方法,如果你不写,系统会默认你有一个有无参构造方法。,如果子类调用父类构造方法,要加上super(),并且要放在第一行;

普通方法,如果子类有一个和父类同样方法的话,子类会覆写父类的方法,而构造方法则不存在覆写,因为名称不一样.

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
普通函数:定义时由 返回值类型,函数名,函数列表三部分构成  调用时通过对象的引用来调用
构造函数:是一个特殊的函数 没有返回值类型函数名与类名一致  创建对象时自动使用 只调用一次  仅一次
作用:通常我们在创建对象时就需要做的一些工作就可以放在构造函数中  因为创建对象时会自动调用构造函数

普通函数除非私有话,不然都是可以被继承的
构造函数:无法继承,只能用super调用父类构造函数

如果说调用方式的话,差不多  都是分为有参,无参,传入对应参数调用

构造函数与普通函数最大的区别就在于使用的时间,与继承

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
构造函数的调用很简单,如果你不写,系统会默认你有一个有无参构造方法。子类的话就会默认你调用了父类那个无参数的构造函数;如果你要调用父类其他的构造函数,就写super(参数列表);并且要放到第一行;如果是调用自己类的其他构造方法,就写this(参数列表);也要放到构造方法的第一行;

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
不一样的,构造函数用this()或者是super()调用都必须在调用函数的第一行,而且一个函数内只能只能存在一个,而一般函数是没有这些限定的,你可以随意调用

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马