+2 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

در مبحث exception ها در جاوا دو کلمه کلیدی throw و throws وجود دارد؟ تفاوت این دو در چیست؟

1 پاسخ

+3 امتیاز
قبل توسط (7.2هزار امتیاز)
ویرایش شده قبل توسط
 
بهترین پاسخ

کلمه کلیدی throw درون بدنه متد کاربرد دارد، و هنگامی که میخواهیم یک رخداد غیر عادی ( که خارج از روند کلی برنامه است ) را ایجاد یا به عبارتی اطلاع رسانی کنیم از آن استفاده می کنیم.

        if(someErrorCondition){
            throw new Exception();
        }

اگر این قطعه کد درون بدنه try نوشته شود هنگام اجرای throw کنترل به بدنه catch منتقل می شود.

اما اگر بخواهیم خطاهای رخ داده به متد فراخوانی کننده ارجاع داده شود از کلمه کلیدی throws برای متد استفاده می نماییم تا تابع فراخوانی کننده را مجبور به handle کردن exception کنیم.

    public void test() throws Exception{
        if(someErrorCondition){
            throw new Exception();
        }
    }

سوالات مشابه

+1 امتیاز
1 پاسخ 286 بازدید
+2 امتیاز
1 پاسخ 311 بازدید
+1 امتیاز
1 پاسخ 417 بازدید
+1 امتیاز
1 پاسخ 630 بازدید
0 امتیاز
0 پاسخ 298 بازدید
سوال شده 6 سال قبل در برنامه نویسی توسط java (0 امتیاز)
0 امتیاز
1 پاسخ 514 بازدید
+1 امتیاز
1 پاسخ 590 بازدید
0 امتیاز
1 پاسخ 486 بازدید
0 امتیاز
1 پاسخ 525 بازدید
...