Допустим, у нас есть класс Date. У нас стоит задача создать объект класса Date, используя конструктор Date(String). Допустим, также, что у нас есть набор строк. Понятно, что если мы возьмем любую абстрактную строку, то ничего у нас не выйдет, и мы получим IllegalArgumentException. Конечно, мы можем обработать это исключение и воспользоваться конструктором по умолчанию:
| Код | Date d = null; try { d = new Date("a"); } catch (IllegalArgumentException e) { d = new Date(); }
|
Это частный случай, мне же интересен общий. Например, если нет конструктора по умолчанию. Возможно, ли создать объект, на лету (в обработчике исключения?). Для упрощения задачи условимся, что конструкторы объектов, о которых идет речь принимают, только примитивные типы и строки. |