1

クラスのフィールドにアクセスしていますが、それらを静的として使用すると、クラスのインスタンスを作成せずにクラスからそれらを使用できるため、コードが少なくなります。しかし、私はすべきですか?ベストプラクティスは何ですか?

public class myClass
{
    private static DataSet myDS;
    myClass.myDS = new DataSet();
}

また

private DataSet myDS;

public DataSet MyDS
{
    get { return myDS; }
    set { myDS = value; }
}

myClass a = new myClass();
a.MyDS = new DataSet();
4

1 に答える 1

0

それはすべて、クラスのメンバーをどのように使用したいか、およびそれらのメンバーへのアクセスをどのように制御したいかによって異なります。少ないコードを書くこととは何の関係もありません。提供した例では、「myClass」のすべてのインスタンスで同じ DataSet を使用する場合、またはプロパティがパブリック/内部の場合はアプリケーション全体で同じ DataSet を使用する場合は、静的にします。「myClass」のインスタンスを作成するたびに新しい DataSet が必要な場合は、非静的にします。

于 2013-06-17T18:35:38.623 に答える