90 likes | 221 Views
C# interfészek. Krizsán Zoltán iit 1.0. Definició. Absztrakt függvények gyűjteménye. Egy osztály nyilvános fv.einek a halmaza. Egy osztály használatának módja. Egy viselkedés. Egy osztály vagy struktúra több interfészt is implementálhat. Tartalma. absztrakt fv.ek
E N D
C# interfészek Krizsán Zoltán iit 1.0
Definició • Absztrakt függvények gyűjteménye. • Egy osztály nyilvános fv.einek a halmaza. • Egy osztály használatának módja. • Egy viselkedés. • Egy osztály vagy struktúra több interfészt is implementálhat.
Tartalma • absztrakt fv.ek • tulajdonság prototypusok • pl: int Kor{get;} • események • indexerek
Implementáció • Osztály, struktúra implementálhatja class osztály : [Ősosztály,]Interfész[,interfész2,…] { } • Visual studio generál üres fv.-eket és megjelöli azokat. • Ha van ősosztály, akkor első helyen kell szerepelnie!
Használat • as, is, cast operátor • Lehet: • fv. paraméter • fv. visszatérési érték • tömb elem
Fontosabb felüldefiniálandó interfészek • IEnumerable • ICloneable • IComparable
IEnumerable publicinterfaceIEnumerator { boolMoveNext (); // Advance the internal position of the cursor. object Current { get;} // Get the current item (read-only property). void Reset (); // Reset the cursor before the first member. }
ICloneable • osztalyobj = newosztaly(); • obj2 = obj; // csak referencia másolás • Ha másik példány kell, akkor clone() publicinterfaceICloneable { objectClone(); }
IComparable • Array.Sort() használahtó ha az elemek implementálják. • CompareTo eredménye • negatív, ha a kapott obj, előrébb van • pozitív, ha a kapott obj, hátrébb van • 0 ha azonos pozició publicinterfaceIComparable { int CompareTo(object o); }