不同类别的不同对象是否有可能在彼此之间使用一个共享项(例如,即时提供一些信息),还是更好地在两个不同类别的不同对象之间进行通信?
Class Base
{
public static string SomeThing = "Shared With All";
}
Class Der1 :Base
{
public void DoSomeThing()
{
SomeThing = "SomeThing Goes in here...";
}
}
Class Der2 :Base
{
public void DoSomeThingElse()
{
Console.WriteLine"(SomeThing);
}
}
....
{
Der1 dr1 = new Der1();
dr1.DoSomeThing();
Der2 dr2 = new Der2();
dr2.DoSomeThingElse(); //shows 'SomeThing Goes in here...'
}
如果有更多帮助,我正在尝试创建某种设计器,因此我需要跟踪设计器上的所有控件及其关联。实际上,目前只有两个对象(一个称为交易,另一个称为地点,不同的地点可以与不同的交易相关联,而这种关联是通过用户单击一个地点并指向其他交易来完成的(您有看到
Proteus
吗?因此,这种方法将帮助我知道哪个对象正在引用哪个其他对象,因此可以轻松发现和保存这两个对象之间的关联。
最佳答案
静态字段的继承方式与普通字段不同。仍然只有一个静态字段Base.SomeThing
。您的两个派生类都引用同一字段:如果Base.SomeThing
发生任何更改,则访问该字段的所有内容都将看到更改。
关于c# - 如果两个类继承一个静态字段,那么这些类的对象是否将共享相同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15484273/