C# Polimorfizm (Çok biçimlilik)

Leader-TR

Üye
11 Ağu 2018
182
50
Sanane
C# Polimorfizm (Çok biçimlilik)
tJoGV2.gif
Kısaca bir nesnenin birden fazla referans ile işaretlenebilmesi olayıdır. Bu özellik sayesinde nesne işaretlendiği referansın özelliği kullanır.
Örnek verecek olursak insan nesnesini ele alalım. Bu nesne hem insan sınıfından referans alabilir hem de memeli sınıfından referans alabilir. Hangi sınıftan referans alırsa o sınıfın özelliklerini alır. Yani burada olay insan nesnesinin birden fazla şekilde tarif edilebilmesi, referanslanmasıdır. Ama bir nesnenin başka bir nesne ile işaretlenebilmesi için ilgili nesne o türden türemiş, yani aralarında kalıtımsal ilişkinin olması şarttır.

C#:
class Program
{
    static void Main(string[] args)
    {
        MyClass3 m = new MyClass1();
           
    }
}

class MyClass1 : MyClass2
{
    public void Yaz()
    {
           
    }
}

class MyClass2 : MyClass3
{
    public void Ciz()
    {
           
    }
}
 
class MyClass3
{
    public void Sil()
    {
           
    }
}
Gördüğünüz gibi normal şartlarda MyClass1 türündeki nesneyi MyClass3 ile işaretlememiz mümkün değildir ama MyClass1 MyClass3'ü miras aldığından dolayı işaretleye/referanslaya biliyoruz. MyClass1, MyClass2 ve MyClass3 classlarını miras aldığından dolayı bu iki classın bütün memberları MyClass1 nesnesinin içerisinde bulunmaktadır ama MyClass2 ile işaretlendiğinden dolayı sadece Ciz ve Sil metodlarına erimi vardır, Yaz metoduna erişimi bulunmamaktadır.

tJoGV2.gif

aq3u4ls.png
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.