Apgalvojums ļauj pārbaudīt jebkuru programmā izdarīto pieņēmumu pareizību. Apgalvojums tiek panākts, izmantojot apgalvot paziņojums Java valodā. Izpildot apgalvojumu, tiek uzskatīts, ka tā ir patiesība. Ja tas neizdodas, JVM izdod kļūdu ar nosaukumu AssertionError. To galvenokārt izmanto testēšanas nolūkos izstrādes laikā.
The apgalvot paziņojums tiek izmantots ar Būla izteiksmi, un to var ierakstīt divi dažādi veidi .
Pirmais veids:
assert expression;>
Otrais veids:
assert expression1 : expression2;>
Piemērs:
tkinter poga
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);> >}> }> |
python programmu saraksts
>
>Izvade
value is 15>
Pēc apgalvojumu iespējošanas:
Izvade:
Exception in thread 'main' java.lang.AssertionError: Underweight>
Apgalvojumu iespējošana
Pēc noklusējuma apgalvojumi ir atspējoti. Mums ir jāpalaiž kods, kā norādīts. Sintakse apgalvojuma paziņojuma iespējošanai Java avota kodā ir:
java –ea Test>
Or
java –enableassertions Test>
Šeit Test ir faila nosaukums.
Apgalvojumu atspējošana
Sintakse apgalvojumu atspējošanai Java ir:
reaģēt-tabula
java –da Test>
Or
java –disableassertions Test>
Šeit Test ir faila nosaukums.
Kāpēc izmantot apgalvojumus
Visur, kur programmētājs vēlas redzēt, vai viņa/viņas pieņēmumi ir nepareizi vai nē.
- Lai pārliecinātos, ka nesasniedzama izskata kods patiešām nav sasniedzams.
- Lai pārliecinātos, ka komentāros rakstītie pieņēmumi ir pareizi.
if ((x & 1) == 1) { } else // x must be even { assert (x % 2 == 0); }> - Lai pārliecinātos, ka netiek sasniegts noklusējuma slēdža korpuss.
- Lai pārbaudītu objekta stāvokli.
- Metodes sākumā
- Pēc metodes izsaukšanas.
Apgalvojums pret parasto izņēmumu apstrāde
Apgalvojumus galvenokārt izmanto, lai pārbaudītu loģiski neiespējamas situācijas. Piemēram, tos var izmantot, lai pārbaudītu stāvokli, ko kods sagaida, pirms tas sāk darboties, vai stāvokli pēc tā darbības pabeigšanas. Atšķirībā no parastās izņēmumu/kļūdu apstrādes, apgalvojumi izpildes laikā parasti tiek atspējoti.
Kur izmantot apgalvojumus
- Argumenti par privātām metodēm. Privātus argumentus nodrošina tikai izstrādātāja kods, un izstrādātājs var vēlēties pārbaudīt savus pieņēmumus par argumentiem.
- Nosacīti gadījumi.
- Nosacījumi jebkuras metodes sākumā.
Kur neizmantot apgalvojumus
- Apgalvojumus nevajadzētu izmantot, lai aizstātu kļūdu ziņojumus
- Apgalvojumus nevajadzētu izmantot, lai pārbaudītu argumentus publiskajās metodēs, jo tos var sniegt lietotājs. Kļūdu apstrāde ir jāizmanto, lai apstrādātu lietotāju sniegtās kļūdas.
- Apgalvojumus nedrīkst izmantot komandrindas argumentos.
Piemērs:
c programma virkņu salīdzināšanai
Java
dizaina modeļi 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);> >}> }> |
>
>Izvade
The voter's age is 14>