26.07.2013 Views

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

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

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

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

I de fleste tilfælde kan man klare sig med en sådan exception handling men der er i C# mange flere<br />

muligheder som vi her kort skal illustrere.<br />

For det første kan man skrive sine egne nye Exception klasser med flere nye egenskaber.<br />

For det andet er det almindeligt at anbringe ’risikabel’ kode i en selvstændig metode som kan<br />

’kaste’ exceptions på passende steder – med formlen throw new Exception().<br />

Et eksempel herpå er følgende, hvor vi har omstruktureret programmet:<br />

// Eksempel på Exception handling i C#:<br />

using System;<br />

//Eksempel på en ny Exception klasse med flere egenskaber:<br />

public class EException : Exception{<br />

public int linje;<br />

public string metode;<br />

public EException(string e,int l,string m):base(e){<br />

linje=l;<br />

metode=m;<br />

}<br />

class app{<br />

}<br />

public static int sum=0;<br />

//OBS her er oprettet en ny metode som kaldes i Main() med en try catch finally:<br />

public static void find_tal(){<br />

byte[] bytes=new byte[5];<br />

string svar="ja";<br />

int i=0;<br />

while(svar=="ja")<br />

{<br />

Console.WriteLine("Indtast et tal i alt max 5!");<br />

byte b=0;<br />

try{<br />

b=byte.Parse(Console.ReadLine());<br />

}catch{<br />

throw new Exception("Tallet er enten over 255 eller under 0!");<br />

}<br />

sum+=b;<br />

bytes[i++]=b;<br />

if(i>4)throw new EException("Der er indtastet for mange tal! Der<br />

er kun 5 pladser i tabellen!",37,"find_tal()");<br />

}<br />

}<br />

public static void Main(string[] args)<br />

Console.WriteLine("\nVil du indtaste endnu et tal: ja nej ?");<br />

svar=Console.ReadLine();

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

Saved successfully!

Ooh no, something went wrong!