C#中的对象实例化之间的区别:将对象存储在引用中与直接调用方法

阿米利安人

我对C#中的对象声明有疑问。我用这个例子解释我可以做到这一点:

MyObject obj = New MyObject(); 
int a = obj.getInt();

或者我可以做到这一点

int a = new MyObject().getInt();

结果是相同的,但是,这些声明之间是否存在任何区别?(没有语法)

谢谢。

MatíasFidemraizer

这不是声明:它是类实例化。

没有实际的区别:全部都是关于可读性和您自己的编码风格的。

我要补充一点,在少数情况下,您需要声明对某个对象的引用:当这些对象为时IDisposable

例如:

// WRONG! Underlying stream may still be locked after reading to the end....
new StreamReader(...).ReadToEnd(); 

// OK! Store the whole instance in a reference so you can dispose it when you 
// don't need it anymore.
using(StreamReader r = new StreamReader(...))
{

} // This will call r.Dispose() automatically

正如一些评论所补充的,在很多情况下,实例化一个类并将对象存储在引用(变量)中会更好/最优,但是对于您的简单示例,我相信差异还不够,并且仍然是编码风格/可读性的问题

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在C#的方法调用中传递对象实例?

来自分类Dev

将对对象的引用存储在ArrayList中

来自分类Dev

将对象存储在数组中以进行实例化和修改实例化(Java)

来自分类Dev

未将对象引用设置为数组中对象的实例

来自分类Dev

C#中不同类型的实例化之间的区别

来自分类Dev

C#中new<object>(){}和new<object>{}实例化对象的区别

来自分类Dev

C#中的Thread.Sleep():它是否休眠了实例化对象的线程,或者我从中调用方法的线程?

来自分类Dev

如何在JavaScript中创建C#对象之间的区别

来自分类Dev

将对对象属性的引用存储在变量中

来自分类Dev

PHP将对象引用存储在数组中

来自分类Dev

将对象引用存储到易失性字段中

来自分类Dev

将对对象属性的引用存储在变量中

来自分类Dev

Firemonkey TTreeView-将对象引用存储在TTreeViewItems,TValue中

来自分类Dev

在C#中,子类对象如何直接调用被重写的超类方法?

来自分类Dev

将对象存储在localStorage中

来自分类Dev

在方法中实例化并添加到C#中Collection的对象的持久性

来自分类Dev

将对象实例化为方法/函数调用中的参数是否不好?

来自分类Dev

如何将对象变量发送到由BackgroundWorker实例调用dowork的方法中?

来自分类Dev

将对象实例化为方法/函数调用中的参数是否是错误的做法?

来自分类Dev

如何将对象的引用存储在另一个类 C++ 中?

来自分类Dev

在Robot Framework中实例化C#对象

来自分类Dev

如何防止在C#中实例化对象

来自分类Dev

如何防止在C#中实例化对象

来自分类Dev

C# - Reporting Services (rdlc) - 错误:未将对象引用设置为对象的实例

来自分类Dev

尝试 SerializeObject 并获取 c# list json 错误:未将对象引用设置为对象的实例

来自分类Dev

C# System.NullReferenceException:未将对象引用设置为对象的实例 >

来自分类Dev

未将对象引用设置为对象实例的方法

来自分类Dev

如何获得对在Objective-C中实例化第二个对象的对象的引用?

来自分类Dev

objects - 在静态方法中调用对象实例

Related 相关文章

  1. 1

    如何在C#的方法调用中传递对象实例?

  2. 2

    将对对象的引用存储在ArrayList中

  3. 3

    将对象存储在数组中以进行实例化和修改实例化(Java)

  4. 4

    未将对象引用设置为数组中对象的实例

  5. 5

    C#中不同类型的实例化之间的区别

  6. 6

    C#中new<object>(){}和new<object>{}实例化对象的区别

  7. 7

    C#中的Thread.Sleep():它是否休眠了实例化对象的线程,或者我从中调用方法的线程?

  8. 8

    如何在JavaScript中创建C#对象之间的区别

  9. 9

    将对对象属性的引用存储在变量中

  10. 10

    PHP将对象引用存储在数组中

  11. 11

    将对象引用存储到易失性字段中

  12. 12

    将对对象属性的引用存储在变量中

  13. 13

    Firemonkey TTreeView-将对象引用存储在TTreeViewItems,TValue中

  14. 14

    在C#中,子类对象如何直接调用被重写的超类方法?

  15. 15

    将对象存储在localStorage中

  16. 16

    在方法中实例化并添加到C#中Collection的对象的持久性

  17. 17

    将对象实例化为方法/函数调用中的参数是否不好?

  18. 18

    如何将对象变量发送到由BackgroundWorker实例调用dowork的方法中?

  19. 19

    将对象实例化为方法/函数调用中的参数是否是错误的做法?

  20. 20

    如何将对象的引用存储在另一个类 C++ 中?

  21. 21

    在Robot Framework中实例化C#对象

  22. 22

    如何防止在C#中实例化对象

  23. 23

    如何防止在C#中实例化对象

  24. 24

    C# - Reporting Services (rdlc) - 错误:未将对象引用设置为对象的实例

  25. 25

    尝试 SerializeObject 并获取 c# list json 错误:未将对象引用设置为对象的实例

  26. 26

    C# System.NullReferenceException:未将对象引用设置为对象的实例 >

  27. 27

    未将对象引用设置为对象实例的方法

  28. 28

    如何获得对在Objective-C中实例化第二个对象的对象的引用?

  29. 29

    objects - 在静态方法中调用对象实例

热门标签

归档