Ответ 1
Вы, безусловно, можете:
assert x > 0 : "x must be greater than zero, but x = " + x;
Подробнее см. Программирование с утверждениями.
Кажется, что было бы полезно, если бы утверждение отображало сообщение, когда утверждение терпит неудачу.
В настоящее время генерируется AssertionError
, можете ли вы указать для него пользовательское сообщение?
Можете ли вы показать пример механизма для этого (кроме создания собственного типа исключения и его метания)?
Вы, безусловно, можете:
assert x > 0 : "x must be greater than zero, but x = " + x;
Подробнее см. Программирование с утверждениями.
assert (condition) : "some message";
Я бы рекомендовал поставить условное выражение в скобки
assert (y > x): "y is too small. y = " + y;
Представьте, если вы столкнулись с таким кодом...
assert isTrue() ? true : false : "some message";
Не забывайте, что это не имеет ничего общего с утверждениями, которые вы должны писать в JUnit.
Это абсолютно верно:
assert importantVar != null : "The important var was null!";
Это добавит "Важный var был null" в исключение, которое выбрано.
Если вы используете
assert Expression1 : Expression2 ;
Expression2 используется как подробное сообщение для AssertionError.