Interface orduya emir veren komutan gibidir.emri verir ama emrin nasıl yapılacağını belirtmez.
Interface (Arayüz) Üyeleri:
1-Özellikler (Properties)
2-Methodlar (Methods)
3-Olaylar (Events)
4-İndexleyiciler (İndexers)
**Arayüzün tüm üyeleri public olarak kabul edilir.
**Arayüz elemanlarını static olarak tanımlayamayız.
**Arayüzlerin uygulandığı sınıflar,arayüzde tanımlanan bütün üyeleri kullanmak zorundadır.
Interface (Arayüz) de Kullanılmayan Üyeler :
1-Yapıcılar (Constructors)
2-Yok Ediciler (Destructors)
3- Alanlar (Fields)
Interface emir { void kos(); } class Class1 : emir { public void kos() { System.Console.WriteLine(“komutanım emirlerinizi en iyi şekilde yerine getireceğim.emir eliniz ben olacağım.”); } } class Class2 : emir { public void kos() { System.Console.WriteLine(“komutanım beni görevlendirdiğiniz için teşekkür ederim.Class1 den daha iyi bir emir el olurum.“); } } static void Main(string[] args)//herşey ortaya çıkar:)) { Class1 x=new Class1(); Class2 y=new Class2(); x.kos(); y.kos(); }
!!Yukarıdaki tanımlamamızda polymorphism kavramı karşımıza çıkıyor.Yani aynı isimdeki 2 metodumuz farklı biçimlerde işleniyor.
evet
arkadaşlar.size interface tanımını anlatmaya çalıştım umarım yardımcı
olabilmişimdir.sorularınız mail adresime gönderebilirsiniz iyi
çalışmalar....
PUBLİC VE PRİVATE ERİŞİMİ UYGULAMAK
1- Bir sınıfın yalnızca bu sınıf içerisinde kullanılan üyeleri private olmalıdır.
2- Belirli bir değer aralığında olması gereken veriler private olmalıdır.
3- Bir üye üzerinde yapılan değişiklik,başka üyeleri de etkiliyorsa private olmalıdır.
4- Yanlış kullanıldıklarında bir nesneye zarar verebilen üyeler private olmalıdır.
5- Private verilerin değerlerini alan ve ayarlayan metodlar public olmalıdır.
class Stack { //bunlar private üyelerdir. char [] stck; //yığının temelini oluşturan depolamayı sağlar. int tos; //yığının en üst tepesinin indexini tutar.
//büyüklüğü bilinen boş bir stack oluşturduk. public Stack(int size) { stck = new char[size]; //yığın için bellek alanı ayrıldı. tos = 0; } public void push(char ch) { if(tos ==stck.Length) { Console.WriteLine("---Stack is full."); return; } stck[tos] = ch; tos++; }
public char pop() { if (tos == 0) { Console.WriteLine("---Stack is empty."); return (char) 0; } tos--; return stck[tos]; }
public bool full() { return tos ==stck.Length; }
public bool empty() { return tos ==0; } public int capacity() { return stck.Length; } public int getNum() { return tos; } class StackDemo { public static void Main() { Stack stk1 = new Stack(10); Stack stk2 = new Stack(10); Stack stk3 = new Stack(10); char ch; int i;
//stk1 içine birkaç karakter yerleştir. Console.WriteLine("Push A through Z onto stk1."); for(i=0;!stk1.full();i++) stk1.push((char)("A"+i)); if (stk1.full()) Console.WriteLine("stk1 is full.");
//stk1"in içeriğini göster. Console.WriteLine("Contents of stk1:"); while(!stk1.empty()) { ch = stk1.pop(); Console.Write(ch); } Console.WriteLine(); if(stk1.empty()) Console.WriteLine("stk1 is empty.\n");
//stk1e biraz daha karakter yerleştir. Console.WriteLine("Again push A through Z onto stk1."); for(i=0;!stk1.full();i++);
//şimdi stk1den eleman al ve elemanı stk2ye koy. Console.WriteLine("Now,pop chars from stk1 and push " + "them onto stk2."); while(!stk1.empty()) { ch = stk1.pop(); stk2.push(ch); } Console.WriteLine("\n");
//yığına 5 karakter birleştir. Console.WriteLine("Put 5 characters on stk3."); for(i=0;i<5;i++) stk3.push((char) ("A"+i)); Console.WriteLine("Capacity of stk3 :"+stk3.capacity()); Console.WriteLine("Number of objects in stk3:"+ stk3.getNum()); } } PROGRAMDA KULLANILAN METODLAR :
push ( ) : yığına eleman yerleştirir.
pop ( ) : yığından eleman çıkartır.
full ( ) : yığın doluyken true, aksi halde false döndürür.
empty ( ) : yığın boşken true , aksi halde false döndürür.
capacity ( ) : yığının toplam kapasitesini gösterir.
get Num ( ) : yığının şu anki eleman sayısını gösterir.
DİĞER METHODLAR :
swap( ) : bu metod 2 argümanı değiş tokuş yapar. ref : bu parametre referans olarak çağrı oluşturur. sqr ( ) : bulunduğu yere argümanın karesini döndürür. out : bu parametre bir metottan dışarıya değer aktarmak için kullanılır. Makalemizin sonuna geldik. Herkese iyi çalışmalar dilerim.
|