Код из жизни

Опубликовано: 2014-02-26 06:50:27

Этот код с точностью до смысла повторяет тот, который я встретил в живом проекте.

[php]

<?php

class MyException extends Exception {

}

class TestException {

    public static function testExc() {

            throw new MyException('MyException ');

    }

}

class Test2Exception {

    public static function test2Exc() {

            TestException::testExc();

    }

}

class Main {

    public function mainMethod() {

            try {

                    Test2Exception::test2Exc();

            } catch (Exception $e) {

                    echo $e-&gt;getMessage().PHP_EOL;

            }

    }

}

$m = new Main();

$m->mainMethod();

[/php]

Вопрос: сработает ли catch и что выведет echo? Вопрос простой, но при том, что классы расположены в разных файлах приходится задуматься о том, зачем вообще нужен был MyException и что автор кода хотел нам сказать, когда делал catch на Exception, а не на MyException.

Прошлые записи

  1. Отпуск в Калининграде
  2. Подарок из Грузии
  3. Уборка придомовой территории
  4. Терпеть нельзя, действовать
  5. Курс 'Upgrade руководителя' от Rubius Academy
  6. Мечты об идеальном Томске. Общественный транспорт и проблема пробок
  7. Arch Linux вместо Linux Mint
  8. Highload 2017 vs Codefest 2018
  9. Детализация по звонкам Теле2, совершенным более полугода назад
  10. Побыть туристом в своем городе
  11. Космология, Байкал, Математика, Минимализм