logo

Afirmații în Java

O afirmație permite testarea corectitudinii oricăror ipoteze care au fost făcute în program. O afirmație se realizează folosind afirma declarație în Java. În timpul executării afirmației, se crede că este adevărată. Dacă eșuează, JVM aruncă o eroare numită AssertionError. Este folosit în principal în scopuri de testare în timpul dezvoltării.

The afirma declarația este folosită cu o expresie booleană și poate fi scrisă în două moduri diferite .



Prima cale:

 assert expression;>

A doua cale:

 assert expression1 : expression2;>

Exemplu:



Java






// Java program to demonstrate syntax of assertion> import> java.util.Scanner;> class> Test {> >public> static> void> main(String args[])> >{> >int> value =>15>;> >assert> value>=>20> :>' Underweight'>;> >System.out.println(>'value is '> + value);> >}> }>

>

caractere de escape java

>

Ieșire

value is 15>

După activarea aserțiilor:

Ieșire:

Exception in thread 'main' java.lang.AssertionError: Underweight>

Activarea aserțiilor

În mod implicit, aserțiunile sunt dezactivate. Trebuie să rulăm codul așa cum este dat. Sintaxa pentru activarea declarației de aserție în codul sursă Java este:

 java –ea  Test>

Sau

 java –enableassertions  Test>

Aici, Test este numele fișierului.

Dezactivarea aserțiilor

Sintaxa pentru dezactivarea aserțiilor în java este:

 java –da  Test>

Sau

 java –disableassertions  Test>

Aici, Test este numele fișierului.

De ce să folosiți Assertions

Oriunde un programator dorește să vadă dacă presupunerile lui/ei sunt greșite sau nu.

  • Pentru a vă asigura că un cod cu aspect inaccesibil este de fapt inaccesibil.
  • Pentru a vă asigura că ipotezele scrise în comentarii sunt corecte.
if ((x & 1) == 1) { } else // x must be even { assert (x % 2 == 0); }>
  • Pentru a vă asigura că cazul comutatorului implicit nu este atins.
  • Pentru a verifica starea obiectului.
  • La începutul metodei
  • După invocarea metodei.

Aserțiune versus gestionarea normală a excepțiilor

modifica fișierul linux

Aserțiunile sunt folosite în principal pentru a verifica situații imposibile din punct de vedere logic. De exemplu, ele pot fi folosite pentru a verifica starea la care se așteaptă un cod înainte de a începe să ruleze sau starea după ce se termină rularea. Spre deosebire de gestionarea obișnuită a excepțiilor/erorilor, aserțiunile sunt în general dezactivate în timpul execuției.

Unde să folosiți Aserțiuni

  • Argumente la metodele private. Argumentele private sunt furnizate numai de codul dezvoltatorului, iar dezvoltatorul poate dori să verifice presupunerile sale despre argumente.
  • Cazuri condiționate.
  • Condiții la începutul oricărei metode.

Unde să nu folosești Assertions

  • Afirmațiile nu trebuie folosite pentru a înlocui mesajele de eroare
  • Aserțiunile nu trebuie folosite pentru a verifica argumentele în metodele publice, deoarece acestea pot fi furnizate de utilizator. Tratarea erorilor ar trebui utilizată pentru a gestiona erorile furnizate de utilizatori.
  • Aserțiunile nu trebuie folosite pe argumentele liniei de comandă.

Exemplu:

Java




// Java program to demonstrate assertion in Java> public> class> Example {> >public> static> void> main(String[] args)> >{> >int> age =>14>;> >assert> age <=>18> :>'Cannot Vote'>;> >System.out.println(>'The voter's age is '> + age);> >}> }>

>

>

Ieșire

The voter's age is 14>