00000
我也不懂啊,什么时候加void啊,构造方法跟之前的public void show();有什么不同啊,为啥有的加void,有的不加啊
以下解释摘自<<Think in java>> 中文版第2版,
“构造函数是一种很特殊的函数,因为他没有返回值。这和‘返回值为void’有极大的差别。返回void时,一般函数并不返回任何东西,但是一般的函数能够选择是否要返回些什么东西。构造函数则绝对不返回任何东西,而且你也没有任何选择。如果它有一个返回值,而且你有权利选择你自己的返回型别(return type),编译器势必得通过某种方式来知道如何处理那个返回值。”
void 其实有返回值,但是函数不返回任何东西,一般函数能够选择要返回什么东西
构造函数是没有返回值,也就是说绝不能返回任何东西,并且你没有任何选择,假设构造函数有返回值,编译器应该知道能够处理哪个返回值,这不行,因为构造函数在创建对象时调用