interface uygulama
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
-
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ı
-
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.
-
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; } }