پرتاب کردن Exception در متد‌های Override شده در جاوا

0 رأی

در آموزش‌ های جاوا کاپ در قسمت Exception Handling، گفته شده که اگر متدی در کلاس پدر استثنایی را پرتاب نکند و همان متد را در کلاس قرزند Override کنیم و سپس آن متد Override شده استثنایی را پرتاب کند، با خطای کامپایل مواجه می‌شویم. به دلیل اینکه رابطه‌ی IS-A را نقض کرده‌ایم. اما به کد زیر توجه کنید:

package com.google;

class Parent {
    void f() {
        System.out.println("Parent");
    }
}
class Child extends Parent {
    @Override
    void f() {
        System.out.println("Child");
        throw new ArithmeticException();
    }
}
public class MainApp {

    public static void main(String[] args) {
        new Child().f();
    }

}

برنامه‌ی بالا با خطای کامپایل مواجه نمیشه؟ علت چیست؟

سوال 4 ماه قبل در تالار کامپیوتر و اینترنت توسط Sina Deuxshiri (397 امتیاز) 84% درصد پذیرش
ویرایش 4 ماه قبل توسط Saeed Zarinfam

سوال های مشابه

+1 رأی
1 جواب 420 بازدید
0 رأی
0 جواب 24 بازدید
0 رأی
2 جواب 93 بازدید
+1 رأی
1 جواب 131 بازدید
0 رأی
1 جواب 194 بازدید
0 رأی
1 جواب 192 بازدید
...