&; İddia" anahtar kelime " ne yapar?
assert
ne yapar?
İşlevi: örneğin
private static int charAt(String s, int d) {
assert d >= 0 && d <= s.length();
if (d == s.length()) return -1;
return s.charAt(d);
}
CEVAP
Eğer -enableassertions
ile VM sonra başlarsanız bu . Kısacası:
assert cond;
gibi davranır
if (!cond)
throw new AssertionError();
Eğer -enableassertions
olmadan VM başlatırsanız (iddia deyim hiç yürütülmez.)
Eğer söz konusu iddia çok assert d >= 0 && d <= s.length();
eşdeğerdir
if (!(d >= 0 && d <= s.length()))
throw new AssertionError();
Eğer program başlatıldı (java -enableassertions YourProgram
ile.)
Resmi olarak, Java Language Specification: 14.10. The assert
Statement şunları söylüyor:
14.10 geçerli.
assert
DeyimBir onaylamaassert
deyimi bir boolean ifadeyi içeren. Bir iddiaya devre dışı ya da etkin. Eğer onaylama işlemi etkinleştirilmişse, onaylama, yürütme boolean ifadenin değerlendirilmesine neden olurbir hata bildirdieğer bu ifade 17 ** değerlendirilirse. Eğer onaylama işlemi devre dışı bırakılırsa, bu iddianın infaz hiçbir etkisi olmaz.
Nerede< . em ^"etkin veya devre dışı"-ea
anahtarı ile kontrol edilir"Bir hata bildirdi"AssertionError
atılır bir araç bu.
Ve son olarak, assert
daha az bilinen bir özelliği
Bu gibi : "Error message"
ekleyebilirsiniz:
assert d != null : "d is null";
atılan AssertionError hata iletisi ne olması gerektiğini belirtmek için.
Java mı anahtar kelime iddia, ne yapar...
Verim anahtar kelime Python ne yapar?...
Javascript "izin" vs " a...
Nasıl&; quot&; Anahtar Kelime çalışmas...
"__Blok " " anahtar kelime ne anl...