Böyle bir şey var:Genel soyut sınıf nasıl geri dönülür?
onların construstors özeldir çünkü bu sınıflar başlatılamaz yüzden böyle yapamaz çok önemlidirabstract class BaseClass<T>
{
protected BaseClass(){}
}
class Class1 : BaseClass<Class1>
{
public static Class1 Instance = new Class1();
private Class1(){}
}
class Class2 : BaseClass<Class2>
{
public static Class2 Instance = new Class2();
private Class2(){}
}
...
public BaseClass<T> Method<T>(int z) where T: BaseClass<T>
{
switch(z)
{
case 1:
return Class1.Instance;
case 2:
return Class2.Instance;
}
}
public BaseClass<T> Method<T>(int z) where T: BaseClass<T>,
yeni()
nasıl özet sınıfını dönüş türü olarak kullanabilir miyim? Sadece bunu başaramıyorum. Burada herhangi bir assisstance için teşekkür ederiz.
Gerçek şu ki, "Yöntem", fabrika yöntemi gibidir ... bütün bağımlılık biraz karmaşıktır ve mümkün olduğunca basit bir iskelet yayınladım. Bu sorun, Class1.Instance deyimine dönemediğim için Class1.Instance deyimini döndüremediğim için ortaya çıkıyor. BaseClass –