CodeBlanks Logo Icon CodeBlanks

interface uygulama

C# kursu · Orta seviye · Ders 48/116

Bir sınıfın interface'i uygulamasını (implement) öğrenirsin.

interface uygulama

Bir sınıf interface'i uygulamak için : ve interface adını yazar: class Rectangle : IShape. Bu, sınıfın interface'in tüm metotlarını uygulayacağı anlamına gelir.

Uygulayan sınıfta her metot public olarak gövdesiyle yazılır. Eğer bir metot eksikse derleme hatası alınır. interface tipinde değişkene uygulayan sınıf örneği atanabilir: IShape s = new Rectangle();. Bu, çok biçimliliğin temelidir.

interface tipinde kullanım

Bir interface, uygulayan sınıfların ortak tipi gibi davranır. IShape s = new Rectangle(); yazınca s değişkeni yalnızca IShape üyelerini görür.

Bu sayede farklı sınıflar aynı koleksiyonda tutulabilir: List<IShape>. Çağrı s.Area() her zaman doğru sınıfın metodunu çalıştırır. Bu davranış çok biçimlilik (polymorphism) olarak bilinir ve ileri gruplarda detaylı işlenecektir.

Uygulama Dikdörtgen alanı

Rectangle sınıfını tanımla: IShape uygulasın, public int Width { get; set; } ve public int Height { get; set; } özelliklerini içersin. public int Area() metodu Width * Height döndürsün. Main'de IShape s = new Rectangle { Width = 3, Height = 4 }; üretip s.Area()'yı yazdır.

Örnek çözümü göster
IShape { public int Width { get; set; } public int Height { get; set; } public int Area() { return Width * Height; } }` şeklinde yaz. Main içine `IShape s = new Rectangle { Width = 3, Height = 4 }; Console.WriteLine(s.Area());` yaz.
Örnek çözüm:
using System;

interface IShape
{
    int Area();
}

class Rectangle : IShape
{
    public int Width { get; set; }
    public int Height { get; set; }

    public int Area()
    {
        return Width * Height;
    }
}

class Program
{
    static void Main()
    {
        IShape s = new Rectangle { Width = 3, Height = 4 };
        Console.WriteLine(s.Area());
    }
}

Kendini test et

  1. Eşleştir: implements parçaları

    : IShape
    uygulama biçimi
    public
    uygulayan metot erişimi
    IShape s = new Rectangle()
    interface tipinde değişken
    eksik metot
    derleme hatası
  2. interface uygulama ile ilgili hangisi doğrudur?

    • Uygulamak için `implements` anahtar kelimesi kullanılır.
    • Bir sınıf yalnızca bir interface uygulayabilir.
    • Uygulamak için `:` ve interface adı yazılır.
    • interface uygulayan sınıf metotları gizleyebilir.
    Cevabı göster

    Uygulamak için `:` ve interface adı yazılır. — Doğru. C#'ta `: InterfaceName` ile uygulama yapılır.

  3. Boşluğu doldur: implements bildirimi

    class Rectangle ____
    {
        public int Width { get; set; }
        public int Height { get; set; }
    }
    Cevabı göster
    class Rectangle : IShape
    {
        public int Width { get; set; }
        public int Height { get; set; }
    }

Orta seviye bölümündeki tüm dersler