public class MultipleObjects {
int a;
int b;
MultipleObjects(int a,int b) {
this.a=a;
this.b=b;
}
MultipleObjects(MultipleObjects g) {
a=g.a;
b=g.b;
}
static MultipleObjects display(/*MultipleObjects o1,MultipleObjects o2*/) {
MultipleObjects temp = new MultipleObjects(new MultipleObjects(2,3));
return temp;
}
}
我在另一个中使用了两个新语句。外部新语句的括号中有什么东西?价值或对象。如果是对象,怎么样?有人能详细解释一下吗?
答案 0 :(得分:2)
首先,您使用构造函数创建了一个新的MultipleObjects,它将int, int
作为参数,然后调用另一个构造函数(AKA复制构造函数),将新传递的对象传递给它。
你的代码
MultipleObjects temp = new MultipleObjects(new MultipleObjects(2,3));
相当于
MultipleObjects foo = new MultipleObjects(2,3);
MultipleObjects temp = new MultipleObjects(foo);