C# Vize + Final Ders Notları 10 – Arayüzler(interface)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4
{
    //interfacelerin kullanımı abstract classlar gibidir. en önemli farkları birden fazla arayüz ile kalıtım yapılabilmesidir.
    interface IArayuz1//IArayuz1 isminde interface oluşturuldu.
    {
        void Metot1();
    }
    interface IArayuz2 : IArayuz1//IArayuz2 arayüzü IArayuz1 arayüzünü kalıtım olarak aldı.
    {
        new void Metot1();//Metot1 iisimleri aynı olduğu için new anahtar kelimesi kondu. Metot2 yaızlsaydı gerek yoktu.
    }
    class Deneme: IArayuz2//Deneme sınıfı IArayuz2 yi kalıtım olarak aldı.
    {
        void IArayuz2.Metot1()//Metot isimleri aynı olduğu için önce arayüz sonra metot ismi yazıldı ve ekrana yazdırma işlemi gerçekleşti.
        {
            Console.WriteLine(“IArayuz2-Metot1 Çalıştı”);
        }
        void IArayuz1.Metot1()
        {
            Console.WriteLine(“IArayuz1-Metot1 Çalıştı”);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Deneme dnm = new Deneme();//deneme sınıfının nesnesi oluşturuldu.
            ((IArayuz2)dnm).Metot1();//metot1 çalıştırılması için nesne önce IArayuz2’e dönüştürüldü sonra metot çalıştırıldı.
            ((IArayuz1)dnm).Metot1();//metot1 çalıştırılması için nesne önce IArayuz2’e dönüştürüldü sonra metot çalıştırıldı.
            Console.ReadKey();
        }
    }
}


Java Developer

Yazıyı Paylaş

Related Articles

Yorum Yaz

© 2020 Onur Arslan. Tüm Hakları Saklıdır. · RSS Yazıları · RSS Yorumları