مدیریت شرایط استثنایی در جاوا

2  

مدیریت حالات استثنایی درجاوا 

  • برنامه کامپیوتری برای حل مساله ای نوشته می شود

 

  • محور برنامه، الگوریتم حل مساله است. برنامه نویس تنها شرایط مختلف الگوریتم را بررسی می کند

 

  • پس از پیاده سازی، کامپیوتر برنامه را اجرا می کند. کامپیوتر، هوشمندی و ابتکار لازم برای مقابله با شرایط غیر مترقبه ندارد.

3  

آشنایی 

  • کاربران انتظارات بالایی از برنامه های کامپیوتری دارند
    • ممکن است برنامه را به شکل پیش بینی نشده ، استفاده کنند!
      • جایی که برنامه ورودی عدد صحیح نیاز دارد؛ رشته حرفی وارد کنند
  • خطاهای موجود در الگوریتم برنامه ها یا پیاده سازی آنها، ممکن است نتایج ناخواسته ای دنبال داشته باشند
  • وظیفه برنامه نویس است که برنامه را به شکلی بنویسد که خطاهای کمی داشته باشد
    • نرم افزا کوه یخ است! فقط 5 % آن قابل مشاهده است
    • برنامه نویس باید خطاها را اداره کند

4  

خطاهای برنامه ها و مدیریت آنها 

  • خطا، هر نتیجه غیر قابل انتظار از اجرای برنامه است
    • تقسیم بر صفر،

 

  • اگر خطاها بدرستی مدیریت نشوند، ممکن است برنامه به نتایج غیر قابل قبول و نادرست منجر شود

 

  • تا جایی که ممکن است، برنامه نویس باید خطاهای ممکن را پیش بینی کرده و برای جلوگیری و مدیریت آنها فکری کرده باشد
    • تنها فکر کافی نیست! ، برنامه باید در مقابل خطاهای احتمالی ایمن سازی شده باشد

5  

نمونه ای از خطاهای ممکن 

  • خطاهای مربوط به حافظه
    • اختصاص حافظه به اشیا، استفاده از متغیرهای مرجع null
  • خطاهای مربوط به سیستم فایل
    • پر بودن دیسک، حذف شدن فایل و...
  • خطاهای مربوط به شبکه
    • قطعی شبکه، حذف یک صفحه وب و...
  • خطاهای محاسباتی
    • تقسیم بر صفر، لگاریتم اعداد منفی و ...
  • خطاهای مربوط به قواعد زبان
    • خطاهای ناشی از عدم رعایت دامنه آرایه ها، مقایسه اعداد و رشته ها

6  

مدیریتخطاها 

  • روش معمول
    • خروجی هر تابعی، بیانگر اجرای موفقیت آمیز یا همراه با خطاست. مثلا اجرای موفق تابع با مقدار صفر مشخص می شود. تابع فراخواننده باید خروجی  تابع فراخوانی شده را بررسی کند و برحسب آن تصمیم بگیرد
    • یک تابع اختصاصی برای تشخیص و تفسیر خطاها نوشته می شود و هنگام وقوع خطا در هر جای برنامه این تابع فراخوانی می شود.

 

int printLog( int n) {

      if n > 0 then

            ln = log(n) ;

            print ln ;

            return 0

      else

            return -1 // error

}

7  

/ 4 نظر / 52 بازدید
Alan Turing

سلام چیدمان متن به نظر می‌رسد که درست نمیباشد و خواندن مقاله را سخت کرده. لطفا برسی‌ کنید. ممنون.

محرم

سلام.چه خبر

asal

salam,man pro0jeye lisansam dar morede exception emplement hast,mikhastam bebinam shoma manbae motabari mi2nid moarefi konid k beto0ne komakam kone,merc