Мне интересно, почему ключевое слово assert
так мало используется в Java? Я почти никогда их не видел, но я думаю, что это отличная идея. Я, конечно же, предпочитаю краткость:
assert param != null : "Param cannot be null";
к многословию:
if (param == null) {
throw new IllegalArgumentException("Param cannot be null");
}
Мое подозрение в том, что они недостаточно используются, потому что
- Они прибыли относительно поздно (Java 1.4), к этому времени многие люди уже установили свой стиль/привычку программирования Java
- Они отключены во время выполнения по умолчанию, WHY OH WHY??