بلوک try - catch
یکی از مکانیزم های کنترل و مدیریت استثنا، بلوک try - catch است که در ادامه با آن اشنا می شویم. عملکرد این بلوک به این صورت است که کد های درون بلوک try اجرا میشوند، اگر خطایی در هنگام اجرای این کد ها پیش آمد، کامپایلر اطلاعات مربوط به این خطا را در یک شی ذخیره می کند و کد های درون بلوک catch مربوطه را اجرا می کند. ساختار کلی بلوک try-catch به صورت زیر است.
try
{
// code
}
catch (Arguments / Exception)
{
// code for handle exception
}
این ساختار می تواند شامل چند بلوک catch نیز باشد، به این معنی که برای هر نوع خطای موجود یک عکس عمل مختلف را اجرا کنیم. برای مثال اگر خطای سرزیر اتفاق افتاد یک کد اجرا شود و اگر خطای تقسیم بر صفر اتفاق افتاد یک کد دیگر اجرا شود. در زیر یک یک نمونه ی ساده از استفاده از بلوک try-catch برای مدیریت و کنترل ورودی به زبان C# آمده است.
int a = 0;
try
{
a = Convert.ToInt32(Console.ReadLine());
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
در کد بالا متغیری صحیحی به نام a تعریف شده است و نیاز است تا این متغیر از ورودی مقدار دهی شود. کد خواندن این متغیر از ورودی در داخل بلوک try قرار داده شده است تا در صورت وارد کردن اطلاعات نامناسب از سوی کاربر پیغام خطا به او نمایش داده شود و خطای زمان اجرا در برنامه پیش نیاید. در بلوک catch متغیری (یا شیئی) به نام ex تعریف شده است که در صورت بروز یک استثنا با اطلاعاتی در مورد آن پر خواهد شد. در خط بعد از فرمان Message برای نمایش این اطلاعات در خروجی استفاده شده است. این یک نمونه ساده از مدیریت استثنا برای ورودی است که کلی ترین نوع استثنا را شامل می شود.
+ نوشته شده در یکشنبه بیست و هفتم فروردین ۱۳۹۱ ساعت 15:3 توسط MEC
GENERAL INFORMATION