我试图在另一个类的非静态构造函数中访问普通类(ClassA.StaticPropertyXX)的静态属性。 ClassA是一个普通的类。
工作正常。我需要知道它是否正确。 请告诉我。
答案 0 :(得分:0)
没有什么可以阻止你这样做。您将在这些类之间建立耦合。对ClassA的更改可能会影响(甚至打破)其他类。如果可以,你应该避免它。
答案 1 :(得分:0)
您可能遇到的事情:
using
语句,因此ClassA
不可用。这可以通过添加using
语句或指定完整命名空间来解决。ClassA
与其他名称冲突。这可以通过在using
语句中为名称空间创建别名来解决。public
。只要您有权访问ClassA
类型,就可以访问其中的公共静态属性。
答案 2 :(得分:0)
而不是:
class MyClass
{
private int _value;
public MyClass()
{
_value = OtherClass.StaticInt;
}
}
青睐:
class MyClass
{
private int _value;
public MyClass(int valueForConstruction)
{
_value = valueForConstruction;
}
}
将MyClass
与OtherClass
解耦,即使您执行此操作:
MyClass c = new MyClass(OtherClass.StaticInt);