Я изучаю дартс уже пару недель и решил поработать над классом числовых векторов для практических целей. Этот класс требует UnequalVectorLengthException
.
Я исследовал исключения в dart, прочитал документацию, но был удивлен, обнаружив, что не существует метода по умолчанию, такого как getMessage()
, как в java. Я знаю, что вы можете добавить сообщение при возникновении исключения, но я чувствую, что должно быть сообщение по умолчанию, «привязанное» к экземпляру исключения, которое вы можете получить при его перехвате.
Это заставляет меня думать, что реализация может / должна быть:
class UnequalVectorLengthException implements Exception {}
, что выглядит странно и неправильно для моего глаза Java. Тогда бросок, вероятно, будет:
if(stuff) throw UnequalVectorLengthException("Vectors are unequal length");
Я также видел, как люди добавляли дополнительные методы, такие как String errorMessage() {}
, но, поскольку пользователь этого исключения может не ожидать, что этот метод будет существовать, я не думаю, что это лучший способ сделать это.
Мой вопрос: является ли приведенный выше код правильным способом реализации исключения в dart (в этом случае подойдет простой комментарий) или существует лучший способ реализации исключения?