Teiginys leidžia patikrinti bet kokių programoje padarytų prielaidų teisingumą. Teiginys pasiekiamas naudojant tvirtinti pareiškimas Java kalba. Vykdant tvirtinimą manoma, kad tai tiesa. Jei nepavyksta, JVM pateikia klaidą pavadinimu AssertionError. Jis daugiausia naudojamas bandymo tikslais kūrimo metu.
The tvirtinti sakinys naudojamas su Būlio išraiška ir gali būti įrašytas du skirtingi būdai .
Pirmas būdas:
assert expression;>
Antras būdas:
assert expression1 : expression2;>
Pavyzdys:
Java
susietas sąrašas
// 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);> >}> }> |
>
>Išvestis
value is 15>
Įjungus tvirtinimus:
Išvestis:
Exception in thread 'main' java.lang.AssertionError: Underweight>
Įgalinti tvirtinimus
Pagal numatytuosius nustatymus tvirtinimai yra išjungti. Turime paleisti kodą, kaip nurodyta. Sintaksė, leidžianti įjungti tvirtinimo teiginį Java šaltinio kode:
java –ea Test>
Arba
java –enableassertions Test>
Čia Testas yra failo pavadinimas.
semantinė klaida
Teiginių išjungimas
„Java“ tvirtinimų išjungimo sintaksė yra tokia:
java –da Test>
Arba
java –disableassertions Test>
Čia Testas yra failo pavadinimas.
Kodėl verta naudoti teiginius
Kur programuotojas nori pamatyti, ar jo/jos prielaidos yra klaidingos, ar ne.
- Norėdami įsitikinti, kad nepasiekiamas kodas iš tikrųjų yra nepasiekiamas.
- Kad įsitikintumėte, ar komentaruose parašytos prielaidos yra teisingos.
if ((x & 1) == 1) { } else // x must be even { assert (x % 2 == 0); }> - Kad įsitikintumėte, jog nepasiektas numatytasis jungiklio korpusas.
- Norėdami patikrinti objekto būklę.
- Metodo pradžioje
- Po metodo iškvietimo.
Tvirtinimas prieš įprastą išimčių tvarkymą
Teiginiai dažniausiai naudojami logiškai neįmanomoms situacijoms patikrinti. Pavyzdžiui, jie gali būti naudojami norint patikrinti būseną, kurios tikisi kodas prieš pradedant vykdyti arba būseną jam pasibaigus. Skirtingai nuo įprasto išimčių / klaidų tvarkymo, tvirtinimai paprastai išjungiami vykdymo metu.
Kur naudoti tvirtinimus
- Argumentai dėl privačių metodų. Privatūs argumentai pateikiami tik kūrėjo kode, todėl kūrėjas gali norėti patikrinti savo prielaidas dėl argumentų.
- Sąlyginiai atvejai.
- Sąlygos bet kurio metodo pradžioje.
Kur nenaudoti teiginių
- Teiginiai neturėtų būti naudojami klaidų pranešimams pakeisti
- Teiginiai neturėtų būti naudojami norint patikrinti argumentus viešuose metoduose, nes juos gali pateikti vartotojas. Klaidų tvarkymas turėtų būti naudojamas vartotojų pateiktoms klaidoms tvarkyti.
- Komandinės eilutės argumentuose tvirtinimai neturėtų būti naudojami.
Pavyzdys:
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);> >}> }> |
>
>
shilpa shettyIšvestis
The voter's age is 14>