黑马程序员技术交流社区

标题: 无参构造方法有什么作用? [打印本页]

作者: 头狼    时间: 2014-12-18 20:58
标题: 无参构造方法有什么作用?
无参构造方法有什么作用?可以不写吗?感觉写与不写没什么区别,就算不写,系统也会默认给

作者: lwj123    时间: 2014-12-18 21:13
1.无参构造方法一般是用来初始化:如为变量赋处置,初始化对象等。 2.无参构造方法可以去除,JAVA会给每个类一个默认的无参构造方法;当一个类中若存在有参构造方法,若想再使用无参的构造方法,就必须写出无参构造方法。 在类中若存在有参构造方法时,最好加上一个无参构造方法。
作者: Jason996    时间: 2014-12-18 21:13
本帖最后由 Jason996 于 2014-12-18 21:14 编辑

答:无参构造方法地作用是为了new出对象的;
可以省略不写,这时系统会自动加上无参构造。
有一点需要你注意一下:如何你只写了有参构造方法(初始化成员变量),没有写无参构造。这时系统不会自动添加无参构造的,此时程序会报错。

作者: 头狼    时间: 2014-12-18 22:28
Jason996 发表于 2014-12-18 21:13
答:无参构造方法地作用是为了new出对象的;
可以省略不写,这时系统会自动加上无参构造。
有一点需要你注意 ...

哦,明白了
作者: zmhlnrs    时间: 2014-12-18 22:29
过来学习一下
作者: jxlovqqvo    时间: 2014-12-18 22:52
不写系统自动给你补充一个,用来创建对象的
作者: 農邨尛夥兒    时间: 2014-12-18 22:58
如果类中还有其他构造函数 那你一个要手动定义一个无参构造函数   当创建对象调用无参时会调用这个构造函数
作者: huduzhi    时间: 2014-12-18 23:05
补充一点,要是自己写了无参的构造方法,系统将不会再为您添加无参构造方法了。
作者: 清浅。。    时间: 2014-12-18 23:08
一楼说的很全面
作者: shuoshuo    时间: 2014-12-18 23:32
用于初始化的
作者: 陈旭刚520    时间: 2014-12-19 18:10
参考参考
作者: 逆世界ylm    时间: 2014-12-19 20:56
一楼的受教了
作者: cz萑    时间: 2014-12-19 21:16
无参的构造函数可以在new对象的时候不用直接往里面传值,可以在后面定义值,如果直接定义了含参数的构造方法,系统是不会再给你无参的构造方法的
作者: ben_vs_cong    时间: 2014-12-19 21:27
构造方法都是用来初始化的,可以不写无参的构造方法,系统会默认给的。但是后面会学到继承,一般子类的构造方法都是默认调用父类无参构造方法,所以避免自己在写了有参构造方法之后,会出现问题,一般都建议手动写上无参构造方法。当然也可以手动在子类的构造方法第一行写上访问父类的有参构造方法,也是可以得。建议最好还是自己手动写上。
作者: 头狼    时间: 2014-12-19 21:50
ben_vs_cong 发表于 2014-12-19 21:27
构造方法都是用来初始化的,可以不写无参的构造方法,系统会默认给的。但是后面会学到继承,一般子类的构造 ...

嗯,明白了,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2