Un'asserzione consente di testare la correttezza di qualsiasi ipotesi fatta nel programma. Un'asserzione si ottiene utilizzando il affermare dichiarazione in Java. Durante l'esecuzione dell'affermazione, si ritiene che sia vera. Se fallisce, JVM genera un errore denominato Errore di asserzione. Viene utilizzato principalmente a scopo di test durante lo sviluppo.
IL affermare viene utilizzata con un'espressione booleana e può essere scritta due modi diversi .
Primo modo:
assert expression;>
Secondo modo:
assert expression1 : expression2;>
Esempio:
Giava
convertire una stringa in una data
// 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);> > }> }> |
Java è nullo
>
>Produzione
value is 15>
Dopo aver abilitato le asserzioni:
Produzione:
Exception in thread 'main' java.lang.AssertionError: Underweight>
Abilitazione delle asserzioni
Per impostazione predefinita, le asserzioni sono disabilitate. Dobbiamo eseguire il codice come indicato. La sintassi per abilitare l'istruzione di asserzione nel codice sorgente Java è:
java –ea Test>
O
java –enableassertions Test>
Qui Test è il nome del file.
Disabilitazione delle asserzioni
La sintassi per disabilitare le asserzioni in Java è:
java –da Test>
O
java –disableassertions Test>
Qui Test è il nome del file.
Perché usare le Asserzioni
Ovunque un programmatore voglia vedere se i suoi presupposti sono errati o meno.
- Per assicurarsi che un codice apparentemente irraggiungibile sia effettivamente irraggiungibile.
- Per assicurarsi che le ipotesi scritte nei commenti siano corrette.
if ((x & 1) == 1) { } else // x must be even { assert (x % 2 == 0); }>
- Per assicurarsi che il caso dello switch predefinito non venga raggiunto.
- Per verificare lo stato dell'oggetto.
- All'inizio del metodo
- Dopo l'invocazione del metodo.
Asserzione e normale gestione delle eccezioni
Le asserzioni vengono utilizzate principalmente per verificare situazioni logicamente impossibili. Ad esempio, possono essere utilizzati per verificare lo stato previsto da un codice prima di iniziare l'esecuzione o lo stato al termine dell'esecuzione. A differenza della normale gestione di eccezioni/errori, le asserzioni sono generalmente disabilitate in fase di esecuzione.
Dove utilizzare le asserzioni
intero in stringa
- Argomenti ai metodi privati. Gli argomenti privati vengono forniti solo dal codice dello sviluppatore e lo sviluppatore potrebbe voler verificare le proprie ipotesi sugli argomenti.
- Casi condizionali.
- Condizioni all'inizio di qualsiasi metodo.
Dove non utilizzare le asserzioni
- Le asserzioni non devono essere utilizzate per sostituire i messaggi di errore
- Le asserzioni non dovrebbero essere utilizzate per verificare gli argomenti nei metodi pubblici poiché potrebbero essere forniti dall'utente. La gestione degli errori deve essere utilizzata per gestire gli errori forniti dagli utenti.
- Le asserzioni non devono essere utilizzate negli argomenti della riga di comando.
Esempio:
data JavaScript
Giava
// 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);> > }> }> |
>
>Produzione
The voter's age is 14>