2011-07-28 11 views
2

私はDataAccessorから派生したDataAccessクラスを持っています。 DataAccessorクラスは、すべてのプロジェクトすべてで使用するDB基本クラスです。クラスのインスタンスをベースクラスから作成

インスタンスメソッドは、DataAccessクラスの新しいインスタンスを作成するヘルパーです。私はInstanceメソッドをDataAccessor基底クラスに移動し、基底クラスから派生クラスの新しいinsatncesを作成したいと思います。どうやってするか?

public class DataAccess : DataAccessor 
{ 

    public static DataAccess Instance 
    { 
     get 
     { 
      return new DataAccess(); 
     } 
    } 
} 

public abstract class DataAccessor 
{ 
} 

答えて

3
public class Base<T> where T : new() 
{ 
    public static T Instance 
    { 
     get { return new T(); } 
    } 
} 

public class Derived : Base<Derived> 
{ 
} 
+0

興味深い。あなたはこのようなもののどこかの例を私に指摘できますか? – iandotkelly

+0

このクラスを使用して整数を作成できます。 int foo = Base 。インスタンス;そのことについて何? –

+0

@ iandotkelly、個人的に私が考えることができるのは、バットから離れた、一般的なシングルトンの実装です。しかし、私たちは皆がどれほど悪いかを知っています:) –

関連する問題