- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:継承クラスで定義したメソッドのtry-catch文)
継承クラスで定義したメソッドのtry-catch文
このQ&Aのポイント
- 継承クラスで定義したメソッドのtry-catch文について
- 親クラスで、子クラスで実装されたメソッドのExceptionをキャッチする方法
- 問題が発生しているコードとその修正方法
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
細々とSyntax Errorが出るのはコピペミスでしょうか。 私の所で動かすと int(1) と出力されるので class A の中でキャッチ出来てるようですが。 以下、Syntax Error修正ソースです。 abstract class A { public function __construct() { try{ $this->testA(); }catch(Exception $e){ var_dump(1);// こっちが動いた } } abstract function testA(); } class B extends A { function testA(){ throw new Exception('test',1); } } try{ new B; }catch(Exception $e){ var_dump(2); }
お礼
ありがとうございます。 実際は結構長いソースでしたので、大まかな枠組みだけを記述していました。 書いたソースにはnew が抜けていましたね。 あと、、、散々ハマった結果、ソースを見直した所 abstract class A { public function __construct(){ try{ $this->testA(); }catch( Exceotion $e ){ // ← ここがこんな風にスペルミスしてました。 } } } お恥ずかしい質問をしてしまいました。。。