构造方法:
public book(){
// 方法体
}
定义无返回值方法:
public void book(){
//方法体
}
请问构造方法是否如void没有返回值的,还是有返回值但是不能定义返回值类型而已。
《The Java Programming Language》上的说法:
Constructors are invoked after the instance variables of a newly created object of the class have been assigned their default initial values and after their explicit initializers are executed.
构造方法是新创建的对象的实例变量缺省初始化以及显式初始化之后才执行的,也就是说在构造方法调用之前这个对象已经存在了,更谈不上你例子中的构造方法返回一个对象引用了。
构造方法是一种特殊的方法,具有以下特点。
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)构造方法不能由编程人员调用,而要系统调用。
(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构 造器,这个构造器不执行任何代码。
(6)构造方法可以重载,以参数的个数,类型,或排列顺序区分。
参考链接:http://blog.csdn.net/ftx2540993425/article/details/51433421
构造函数不能定义返回值
但是可以定义有类类型的普通函数
比如
public book getbook()
构造方法是有返回值的 但是不是又你定义的 而是编译器给出的
在调用构造方法时 会返回一个当前类的对象
谢谢
没有,这是Java的语法。构造函数必须与类同名,且不能有返回值。
构造方法是有返回值的 但是不是又你定义的 而是编译器给出的
在调用构造方法时 会返回一个当前类的对象
构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
没有返回值,但是会去请求内存
语法中是构造方法是么一头返回值的