-8

別のクラスの非静的コンストラクターで、通常のクラス (ClassA.StaticPropertyXX) の静的プロパティにアクセスしようとしています。ClassA は通常のクラスです。

それは正常に動作します。それが正しい方法かどうかを知る必要があります。私にお知らせください。

4

3 に答える 3

0

あなたがそうすることを妨げるものは何もありません。これらのクラス間のカップリングが組み込まれているだけです。ClassAを変更すると、他のクラスに影響を与える可能性があります(中断することもあります)。したがって、可能であればそれを避ける必要があります。

于 2012-05-30T09:20:22.987 に答える
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);
于 2012-05-30T09:22:37.740 に答える
0

あなたが遭遇するかもしれないもの:

  • using名前空間のステートメントがないため、使用ClassAできません。これは、ステートメントを追加するかusing、完全な名前空間を指定することで解決できます。
  • 名前ClassAが別の名前と競合しています。usingこれは、ステートメントで名前空間のエイリアスを作成することで解決できます。
  • 静的プロパティはではありませんpublic

タイプにアクセスできる限り、そのClassAタイプのパブリック静的プロパティにアクセスできます。

于 2012-05-30T09:21:50.297 に答える