Код из жизни

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