SORU
25 NİSAN 2011, PAZARTESİ


GetType() temel sınıf çağrıldığında çoğu türetilmiş bir tür geri dönüş mü?

GetType() temel sınıf çağrıldığında çoğu türetilmiş bir tür geri dönüş mü?

Örnek:

public abstract class A
{
    private Type GetInfo()
    {
         return System.Attribute.GetCustomAttributes(this.GetType());
    }
}

public class B : A
{
   //Fields here have some custom attributes added to them
}

Ya da sadece türetilmiş sınıfları aşağıdaki gibi uygulamak zorunda olacak soyut bir yöntem yapmalıyım?

public abstract class A
{
    protected abstract Type GetSubType();

    private Type GetInfo()
    {
         return System.Attribute.GetCustomAttributes(GetSubType());
    }
}

public class B : A
{
   //Fields here have some custom attributes added to them

   protected Type GetSubType()
   {
       return GetType();
   }
}

CEVAP
25 NİSAN 2011, PAZARTESİ


GetType() gerçek, örneği türünü döndürür. Senin durumunda, arama GetType() örneği B döndürür typeof(B) bile değişken söz konusu olduğu bildirilen bir referans için bir A.

GetSubType() yöntemi için bir sebep yok.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • National Geographic

    National Geo

    7 Mayıs 2006
  • Top Gear

    Top Gear

    27 Mart 2006