C# Software Development

Abstract Sınıf ve Interface Arasındaki Farklar

Written by Burak Yılmaz

Interface de abstract sınıflar da soyutlama için kullanılır. Aşağıda her ikisi için de detaylı yazılarımızı yazmıştık.

http://www.kemalburakyilmaz.com/interface-nedir/

http://www.kemalburakyilmaz.com/abstract-nedir/

Bu yazımızda aralarındaki farkları kısaca listeleyeceğiz. İş görüşmelerinde sorulan klasik sorulardandır 🙂

  1. Bir abstract sınıf soyut olan veya olmayan memberlara sahip olabilir. Fakat bir interface’deki tüm memberler soyutdur ve türetilmiş sınıflarda override edilmek zorundadır.
  2. Bir sınıf birden fazla interface’den türetilebilirken, yalnızca bir abstract class’dan türetilebilir.
  3. Abstract sınıflar içerisi dolu veya boş metod ve değişkenler bulundurabilir fakat interface’ler yalnızca içerisi boş metodlar bulundurabilir.
  4. Interface’ler access modifiers içeremez fakat abstract sınıflar bunları metodlar ve değişkenler için kullanabilir.

About the author

Burak Yılmaz