C# Abstruct Class

AhmetKürşadYILDIZ
2 min readApr 14, 2024

--

C# Soyut Sınıflar: Nedir, Nasıl Kullanılır, Özellikleri Nelerdir?

C# programlama dilinde, bir soyut sınıf, tamamlanmamış veya soyut yöntemler içeren bir şablondur. Bu yöntemlerin gövdeleri soyut sınıfta tanımlanmaz, alt sınıflarda tanımlanır. Soyut sınıflar, kodun yeniden kullanılabilirliğini ve organizasyonunu artırmak için kullanılır.

Soyut sınıflar, genel bir çerçeve oluşturmak ve alt sınıflara ortak işlevsellik sağlamak için idealdir. Soyut bir sınıftan nesne oluşturulamaz, ancak alt sınıflardan nesneler oluşturulabilir.

C# Soyut Sınıf Özellikleri

C# soyut sınıflarının temel özellikleri şunlardır:

  • Soyut Yöntemler: Somut bir gövdeye sahip olmayan yöntemlerdir. Alt sınıflar tarafından uygulanmalıdır.
  • Somut Yöntemler: Normal yöntemler gibi gövdeleri olan yöntemlerdir. Alt sınıflar tarafından da kullanılabilir veya üzerine yazılabilir.
  • Erişim Belirleyiciler: Soyut ve somut sınıf üyelerinin (yöntemler, özellikler) erişimini kontrol etmek için kullanılır.
  • Alanlar: Soyut sınıflar, alt sınıflara miras alınabilecek alanlar da içerebilir.
  • Kalıtım: Alt sınıflara özelliklerin ve yöntemlerin aktarılmasını sağlar.
  • Çoklu Kalıtım: Birden fazla soyut sınıftan özellik ve yöntem aktarmayı sağlar.

Örnek C# Soyut Sınıf

C#

abstract class Hayvan
{
public string Ad { get; set; }
    public abstract void SesCikar(); // Soyut yöntem    public void YemekYe()
{
Console.WriteLine("{0} yemek yiyor.", Ad);
} // Somut yöntem
}
class Kedi : Hayvan
{
public override void SesCikar() // Soyut yöntemi uygulamak için "override" anahtar kelimesi kullanılır
{
Console.WriteLine("Miyav!");
}
}
class Kopek : Hayvan
{
public override void SesCikar()
{
Console.WriteLine("Hav!");
}
}

Bu örnekte, Hayvan adında bir soyut sınıf tanımladık. Bu sınıf, Ad adında bir alan ve SesCikar adında bir soyut yöntem içerir. SesCikar yönteminin gövdesi soyut sınıfta tanımlanmaz.

Kedi ve Kopek adında iki alt sınıf tanımladık. Bu alt sınıflar, Hayvan sınıfından kalıtım yoluyla Ad alanını ve YemekYe yöntemini miras alır. Ayrıca, SesCikar soyut yöntemini kendi implementationslarıyla geçersiz kılarlar (override ederler).

C# Soyut Sınıfları Kullanmanın Faydaları

C# soyut sınıfları kullanmanın birçok faydası vardır:

  • Kod Yeniden Kullanımı: Soyut sınıflar, ortak işlevselliği alt sınıflara aktararak kod tekrarını azaltır.
  • Kod Organizasyonu: Soyut sınıflar, kodunuzu daha organize hale getirerek ilgili işlevleri bir araya getirir.
  • Polimorfizm: Alt sınıflara aynı yöntemi farklı şekillerde uygulamalarına olanak tanıyarak polimorfizmi destekler.
  • Soyutlama: Soyutlama katmanı sağlayarak kodunuzu daha basit ve anlaşılır hale getirir.

--

--