PHP中的异常继承

时间:2016-06-08 15:18:05

标签: php

让我们看看这段代码:

class customException extends Exception{}
$a;
try{
    if(!$a)
        throw new customException("Variable not initialize");
    echo $a;
}
catch(customException $e){
    echo $e->getMessage();
}

抓住阻止工作,我们在屏幕上显示错误文字,但是如果我在catch(customException $e)上更改此catch(Exception $e)则会有效...为什么?我们在课程customException上抛出异常,为什么它会起作用?

解释一下

1 个答案:

答案 0 :(得分:0)

如果catch(exception $e)为真,

$e确实意味着“抓住($e instanceof exception)

对于一个类(例如instanceof),所有父级(例如customException)以及该类或任何父级实现的所有接口,

exception检查都是正确的。