MeslekForum Mesleki Gelişim Forumu

Go Back   MeslekForum Mesleki Gelişim Forumu > Bilgisayar Yazılım Donanım > Programlama > C#

Cevapla
 
LinkBack Seçenekler Stil
Alt 12-10-2009, 23:52   #1 (permalink)
Kullanıcı Profili
SITE ADMİN
Taner - ait Kullanıcı Resmi (Avatar)
Kullanıcı Bilgileri
Üyelik Tarihi: Oct 2009
Üye No : 2
Mesajlar: 94
Standart Arayüz (Interface) Nedir ?

Arayüz, bir sınıf tarafından uygulanacak olan birden fazla metodu tanımlamak için
kullanılır. Arayüz, herhangi bir metot uygulamadan uygulamanın nasıl yapılacağını belirten
mantıksal bir özelliktir. Kısaca, kullanıcıyla uygulama arasındaki iletişimi en kolay ve en
anlaşılır yapan bir özelliktir.

Arayüz yapısal olarak özet sınıflara benzer. Arayüz bir kez tanımlandıktan sonra
istenilen sayıda sınıf bu arayüzü kullanabilir. Ayrıca, bir sınıf da istenilen sayıda arayüzü
uygulayabilir.

Arayüz tanımlamak için interface kelimesi kullanılır.

Arayüz tanımlama yapısı şöyledir:

Kod:
interface Ad
{
dönüş_tipi metot_adı1(değişkenler);
dönüş_tipi metot_adı2(değişkenler);
//
dönüş_tipi metot_adıN(değişkenler);
}
Arayüzler dönüş tipleri, isim ve kullanılan değişkenlerle tanımlanır. Arayüz içindeki
metotlarda uygulama yoktur. Bu nedenle, interface içeren sınıflar metotların tümünü uygular.
Arayüz içindeki metotlar her yerden ulaşılabileceği için public’tir. Bu yüzden açıkça bir
erişim belirleyicisi kullanılmasına izin verilmez. Ayrıca, arayüz üyeleri static olarak
tanımlanmaz.

Arayüzlerin programda kullanım şekli şöyledir:
Kod:
class sınıf_adı: arayüz_adı
{
// sınıf kodları
}
Bu kullanımda sınıf arayüzün tümünü uygular. Birden fazla arayüz kullanılacaksa
arayüz adları arasına, (virgül) işareti konur. Arayüzler tanımlanırken isimlerinin başına “I”
harfi konur. Bunun sebebi, arayüzlerle türetilmiş sınıfları birbirinden ayırmaktır.

Örnek

Bu program, başlangıç ve artış değeri verilen sayıları üç kere ekrana yazdıran bir
programdır. Programda mevcut Class’ın dışında bir arayüz oluşturulmuştur. Class’tan “sayi”
üye değişkeni oluşturularak yine Class’la aynı adı taşıyan metoda gönderilmekte ve
başlangıç değerleri atanarak ekrana yazdırılmaktadır. Arayüzün nasıl tanımlandığına dikkat
ediniz.


Kod satırları derlenip çalıştırıldığında ekran görüntüsü resim 3.9’daki gibidir.



Resim 3.9: Interface kullanılarak yapılan örneğin ekran görüntüsü

Arayüz (Interface) Özellikleri

Arayüzde kullanılacak özellikler aynı metotlarda olduğu gibi arayüzün içinde kod
satırları olmadan belirtilebilir.

Özelliklerin kullanımı şu şekildedir:

Kod:
Tip isim
{
get;
set;
}
“get” ve “set” deyimleri bir değişkenin değerini almak ve ayarlamak için kullanılır.
“set” deyimiyle ilgili elemana değer aktarılmakta ve “get” bloğunda ise aktarılmış olan değer
elemana gönderilmektedir.

Örnek

Bu programda bir öğrencinin kişisel, veli ve ders notu bilgileri üç ayrı arayüzle
tanımlanarak konsoldan girilmektedir. Girilen bilgileri ve ders notu ortalamasını ekrana
yazdıran program kodu aşağıdaki gibidir. Programdaki arayüzlerle diğer kod satırları
yazılmadan bir şablon oluşturulmuş ve programın okunurluğu artırılarak programın akıcılığı
sağlanmıştır.







Programda önce öğrencinin ad, soyad ve okul numarası bilgileri istenmektedir. Alınan
bu bilgiler üç arayüzden oluşturulan “Ogrenci” sınıfındaki ilgili metotlara
yönlendirilmektedir. Yapılan işlemlerden sonra “OgrenciBilgi()”, “OgrenciNot()” ve
“VeliBilgi()” metotları kullanılarak elde edilen bilgiler ekrana yazdırılmaktadır.



Resim 3.10: Arayüzde get-set kullanılarak yapılan örneğin ekran görünümü

Kaynak : MEGEP | Nesne Tabanlı Programlama 3
__________________
Beni Sevmek İçin Programlanma Devrelerini Yakarım !
Taner isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Alıntı ile Cevapla
Cevapla

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 17:07.


Powered by vBulletin
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30