黑马程序员技术交流社区
标题:
构造函数问题????
[打印本页]
作者:
大大老伴要跪IT
时间:
2014-1-13 22:20
标题:
构造函数问题????
构造函数中能不能使用return语句?求详细解答!
作者:
xu6148152
时间:
2014-1-13 22:26
本帖最后由 xu6148152 于 2014-1-13 22:29 编辑
不行。构造函数仅仅只是对类的属性进行初始化。
函数要有返回值类型才能使用return语句。而构造函数是特殊的函数,没有任何返回值类型。
但是其实C++的构造函数石油返回值类型的,返回值类型就是本类类型。如赋值构造函数。
作者:
app297
时间:
2014-1-13 22:37
是可以的用的,其实构造函数也是一个函数(方法)
return; 一个功能是发挥数据,还有一个功能是 结束当前函数。
在比老师的视频中,有几级都是在将, 其实每个方法最后面都省略了 return; 代表方法体结束,看下面的代码
public class Test {
public static void main(String[] args) {
Single s = new Single();
s.show();
}
}
class Single {
int s = 3;
Single(){
System.out.println("构造函数");
return;
}
public void show(){
System.out.println("可以使用" + s);
return;
}
}
复制代码
作者:
november
时间:
2014-1-13 22:37
因为构造函数中不能有返回值呀。
作者:
淡夜清风
时间:
2014-1-13 22:42
可以的。。
如果构造函数里需要一些逻辑处理,可以使用return语句。
使用return 不一定要返回值。
我这里举个例子:
public class Return {
int x=0;
Return(int x){
if(x>10)
return;
else {
this.x=x;
}
}
public static void main(String[] args) {
Return r1 = new Return(12);
System.out.println("r1---"+r1.x);
Return r2 = new Return(9);
System.out.println("r2---"+r2.x);
}
}
输出结果:
r1---0
r2---9
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2