مردم جهان به دو دسته تقسیم می شوند دسته اول کسانی که موافقند مردم جهان به دو دسته تقسیم میشن و دسته دوم کسانی که مخالفند مردم جهان به دو دسته تقسیم میشن

وبلاگ آموزش سی شارپ

سلام خدمت همه شما دوستان عزیز که به من لطف داشتید و وبلاگ رو دنبال کردین...از مباحثی که قصد داشتم مطرح کنم
File,delegate,event
هنوز باقی مونده که احتمالاً تو تابستون می گم...شاید هم نگفتم هیچ وقت!:D
به هر حال ادامه آموزش رو تو درس ساختمان داده می گم! به آدرس زیر:
http://datastructurekelas.blogspot.com
تا اطلاع ثانوی موفق باشید!:D

۱۳۸۸ دی ۲, چهارشنبه

مدیریت خطا ها

سه نوع خطا وجود دارد
1.bugs : ای خطا معمولاً از خطا های برنامه نویس است
2.user error: این خطا خطایه که از طرف کار بر ایجاد مثل مقدار نا مناسب دادن به یک فیلد
3.Exception: خطای غیر عادی که کنترل آن توسط برنامه نویس دشواره و نمی تونه به راحتی اون رو تشخصی بده

برای این که از شر این خطاها راحت بشیم باید اون قسمتی رو که احساس می کنیم خطا رخ میده رو مشخص کنیم با try بعد تو قسمت catch پیغامی رو که می خوایم که همون نوع خطا هست رو نشون بده می نویسیم و در آخر هم از finally استفاده می کنیم که چه در صورتی که خطا رخ بده و چه در صورتی که خطا رخ نده پیغامی رو نشون بده!

اما گاهی اطلاع داریم که چه اتفاقی ممکنه بیفته و برای این که پیغام خطا رو نشون بدیم یک شی از جنس اون خطا صدا می کنیم که وقتی که اون خطا رخ داد پیغام مربوط به اون نمایش داده بشه!
حالا یه چندتا مثالا نیگا کنیم!
class Program
{
public static void Main()
{
int[] myarray = new int[5];
try
{
for (int ctr = 0; ctr < 10; ctr++)
{
myarray[ctr] = ctr;
}
}
catch(Exception e)
{
Console.WriteLine(e);
}
Console.WriteLine("at end of class");
Console.ReadLine();
}
تو این مثال از قصد کاری کردیم که خطا ایجاد بشه طول رشته از طول حلقه for کمتره پس خطا داره!
و یک مثال هم با finally

public static void Main()
{
int[] myarray = new int[5];
try
{
for (int ctr = 0; ctr < 10; ctr++)
//or for (int ctr = 0; ctr < 4; ctr++)
{
myarray[ctr] = ctr;
}
}
catch (Exeption e)
{
Console.WriteLine(e);
Console.WriteLine(" exception caught");
}
finally
{
Console.WriteLine("done with exception handling");
}
Console.WriteLine("end of program");
Console.ReadLine();
}
امیدوارم که به درد بخور بوده باشه و از نظر من مهمترین فایده ای که داره اینه که بعد از وقوع خطا برنامه همچنان اجرا میشه و این واقعاً عالیه!

موفق و پیروز باشید!
Blogged with the Flock Browser