Sobes.tech
Junior

C# dilinde arayüz nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

C# dilinde arayüz, üyelerin (yöntemler, özellikler, olaylar, indeksleyiciler) bir kümesini tanımlayan sözleşmedir, ancak içerik sağlamaz. Sınıflar ve yapılar, bir veya daha fazla arayüzü uygulayabilir ve tüm arayüz üyelerinin uygulamasını sağlamayı taahhüt eder.

Ana özellikler:

  • Çok biçimliliğe ulaşmayı sağlar.
  • Davranışı tanımlar, durumu değil.
  • Erişim belirteçleri olmadan yalnızca üyelerin bildirimlerini içerebilir (örtülü public).
  • Doğrudan oluşturulamaz (örneğin, örneklenemez).
  • Çoklu kalıtımı destekler (bir sınıf birden fazla arayüzü uygulayabilir).
  • .NET Core 3.0+ ile varsayılan arayüzler tanıtıldı ve üyelerin uygulamasını sağlamaya izin verir.

Örnek:

// Arayüz tanımı
public interface ICustomer
{
    string GetFullName(); // Yöntem bildirimi
    int CustomerId { get; } // Özellik bildirimi
}

// Arayüzü uygulayan sınıf
public class CompanyCustomer : ICustomer
{
    public int CustomerId { get; set; }
    public string CompanyName { get; set; }
    public string ContactPerson { get; set; }

    public string GetFullName()
    {
        return $"{CompanyName} ({ContactPerson})";
    }
}