.NET在运行时更改类(对象)实例的所有者

时间:2011-01-01 20:59:01

标签: c# .net class runtime instance

在.NET C#中是否可以在运行时更改对象的所有者?

例如:

class abc {
     MyClass ClassInstance = new MyClass();
     AnotherClass AnotherClassInstance = new AnotherClass();
     // Some how set the owner of "AnotherClassInstance" to "ClassInstance"
}

谢谢!

1 个答案:

答案 0 :(得分:4)

更改实例的所有者是什么意思? .NET对象没有所有者,所以它真的不清楚你想要什么。

如果您的意思是希望AnotherClass类始终在类逻辑中将MyClass视为其“所有者”,那么只需将构造函数添加到AnotherClass即可。将MyClass作为参数并保留此参考。

像这样:

public class AnotherClass
{
    MyClass owner = null;

    public AnotherClass(MyClass owner)
    {
        this.owner = owner;
    }
}