26.07.2013 Views

Operativsystem: .............................................................

Operativsystem: .............................................................

Operativsystem: .............................................................

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Implementere standard interfaces – IComparable:<br />

Der findes i .NET og C# mange hundrede definerede interfaces, som kan (eller skal) implementeres<br />

i en given sammenhæng.<br />

Vi skal se på et konkret eksempel: Det interface som hedder IComparable som findes i<br />

mscorlib.dll.<br />

Formålet med dette interface er at muliggøre sortering af og sammenligninger mellem objekter. Det<br />

indeholder kun een abstrakt metode (som vi altså er tvunget til at implementere): CompareTo().<br />

Koden for Bog skrives derfor om så den implementerer IComparable sådan (Bog implementerer<br />

nu to interfaces):<br />

public class Bog : IAbstraktBog, IComparable {<br />

string forfatter,titel,type="Bog";<br />

int sider;<br />

}<br />

public string Forfatter{get{return forfatter;}set{forfatter=value;}}<br />

public string Titel{get{return titel;}set{titel=value;}}<br />

public int Sider {get{return sider;}set{sider=value;}}<br />

//eks på property der kun er readonly - logisk!<br />

public string Type {get{return type;}}<br />

public void vis_bog(){}<br />

//Her implementeres metoden i IComparable:<br />

//Når 2 objekter sammenlignes er der 3 muligheder:<br />

int IComparable.CompareTo(object o){<br />

Bog bog=(Bog)o;<br />

if(this.sider>bog.sider)return 1;<br />

if(this.sider

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!