2014-08-30 30 views
0

我正在擴展Exception類,在我的子類中,我想覆蓋getMessage方法,爲特定的異常做一些消息特定的格式化。但是,根據documentationException類中的所有獲得者都是final爲什麼異常最終獲得者?

想法背後的理由是什麼?Exception類的獲得者必須是final

回答

0

其原因是final是您希望這個相當重要的類始終具有相同的核心功能實現。所以如果有人來到你身後,他們仍然可以使用getMessage()。這是final背後的整個想法,即沒有孩子可以覆蓋父母。

只寫你自己的方法

class MyException extends Exception { 

     public function getMyErrors() { 
      return $this->message; 
     } 
} 
相關問題