我有一个类,我在其中声明一个对象,但不初始化该对象。然后我将对象传递给另一个类中的方法进行初始化。我期望发生的是调用类中的对象现在将具有对初始化对象的引用,但它是空的。
这是我的意思的一个例子:
class MainClass
{
ObjectA foo;
OtherClass.InitializeObjectA(foo);
// why is foo null over here?
}
class OtherClass
{
public static void InitializeObjectA(ObjectA device)
{
device = new ObjectA();
}
}
我的问题是,当我在调用它后尝试使用 foo 时,该设备InitializeObjectA()
仍然指向 null!如果我改变InitializeObjectA()
它的out ObjectA device
工作原理。谁能解释为什么需要这样做?