Я написал следующий код:Как включить утверждение assert для выполнения?
class Cl
{
public static void main (String[] args) throws java.lang.Exception
{
assert true; //1
Bar.foo();
}
static class Bar{
public static void foo(){
boolean enabled = false;
assert enabled = true;
System.out.println("Asserts " +
(enabled ? "enabled" : "disabled"));
}
}
}
JLS 14.10 говорит:
Оператор утверждают, что выполняется после того, как его класс закончил инициализации включена, если и только если хост-система имеет , определено, что класс верхнего уровня, который лексически содержит утверждение заявление включает утверждения.
Я думал, что разрешил утверждение утвердить true в классе Cl
, но он все еще не работает. Как я могу включить утверждение относительно того, что сказал JLS
?
'assert enabled == true;' попробуйте это, поскольку утверждение терпит неудачу, только если логическое выражение приводит к 'false', насколько я знаю. – EpicPandaForce