Java Practice:返回作为参数传递的相同对象
发布时间:2020-05-24 18:51:31 所属栏目:Java 来源:互联网
导读:在下面的代码中,updateWithContex返回与参数相同的对象是不是很糟糕? class SomeClass{ Foo updateWithContex(Foo foo){ foo.setAppId(i); foo.setXId(index); //..... return foo; }}class Foo{
|
在下面的代码中,updateWithContex返回与参数相同的对象是不是很糟糕? class SomeClass{
Foo updateWithContex(Foo foo){
foo.setAppId(i);
foo.setXId(index);
//.....
return foo;
}
}
class Foo{
public void setAppId(int appId)
{
//
}
public void setXId(int appId)
{
//
}
public void changeState(X x)
{
//
}
}
在C中,我看到过这样的代码: BigObject&
fastTransform( BigObject& myBO )
{
// When entering fastTransform(),myBO is the same object as the function
// argument provided by the user. -> No copy-constructor is executed.
// Transform myBO in some way
return myBO; // Transformed myBO is returned to the user.
}
这也错了吗? 解决方法返回一个对象将建议您的API用户不会更改传入的对象,而是返回一个新的修改对象.为了清楚说明情况并非如此,我建议将返回类型更改为void.(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
