我经常问自己一个问题,如果你需要在一个对象上调用一个方法,最好使用一个变量吗?到目前为止,我已经猜到答案是肯定的 - 您的选择是什么,原因是什么?
随变量:
MyObject mo = new MyObject();
mo.MyMethod();
//mo not used again
Run Code Online (Sandbox Code Playgroud)
没有变量:
new MyObject().MyMethod();
Run Code Online (Sandbox Code Playgroud)
我对.NET特别感兴趣,但是如果在其他语言中有任何危险点,我也更愿意预先警告.
另一种方法可能是使用静态方法.这样,您可以避免创建新对象.
public class MyClass
{
public static int GetSomeInt()
{
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
不,我经常链接方法调用,尤其是LINQ:
var query = source.Where(...)
.Select(...)
.Take(10);
Run Code Online (Sandbox Code Playgroud)
如果要调试中间值,并且为了解释中间值(通过名称),额外的变量可能很有用,但除此之外,没有真正的问题.
正如您所描述的那样,两种选择之间没有有效的区别.但是如果你经常需要创建一个对象的实例,只需调用一个方法; 你应该考虑你的设计是否正确?是否有必要拥有所有这些短命的物体?请记住,对于每个对象分配,垃圾收集器最终必须收集引用.
| 归档时间: |
|
| 查看次数: |
185 次 |
| 最近记录: |