Kad Java programmēšanā vajadzētu izmantot pārtraukuma paziņojumus?

Autors Berijs Burds

Vienā vai otrā laikā katrs Java programmētājs aizmirst izmantotpārtraukumspaziņojumi. Sākumā iegūtais rezultāts ir mulsinošs, bet pēc tam programmētājs atceras kritumu. Termiņš izkrišana apraksta to, kas notiek, kad beidzat agadījumābez apārtraukumspaziņojums, apgalvojums.



Notiek tā, ka koda izpilde nonāk tieši nākamajāgadījumārindā. Izpilde turpina kristies, līdz beidzot sasniedzat apārtraukumspaziņojums vai visa beigasslēdzispaziņojums, apgalvojums.



Vienkārši pārbaudiet šo kodu. Šim kodam irslēdzispaziņojums pagājis slikti.

  /*    * This isn_t good code. The programmer forgot some    * of the break statements.    */  import java.util.Scanner; import java.util.Random; import static java.lang.System.out; class BadBreaks { public static void main(String args[]) { Scanner keyboard = new Scanner(System.in); Random myRandom = new Random(); int randomNumber; out.print('Type your question, my child: '); keyboard.nextLine(); randomNumber = myRandom.nextInt(10) + 1; switch (randomNumber) { case 1: out.println('Yes. Isn't it obvious?'); case 2: out.println('No, and don't ask again.'); case 3: out.print('Yessir, yessir!'); out.println(' Three bags full.'); case 4: out.print('What part of 'no''); out.println(' don't you understand?');      break  ; case 5: out.println('No chance, Lance.'); case 6: out.println('Sure, whatever.'); case 7: out.print('Yes, but only if'); out.println(' you're nice to me.'); case 8: out.println('Yes (as if I care).'); case 9: out.print('No, not until'); out.println(' Cromwell seizes Dover.'); case 10: out.print('No, not until'); out.println(' Nell squeezes Rover.'); default: out.print('You think you have'); out.print(' problems?'); out.print(' my random number'); out.println(' generator is broken!'); } out.println('Goodbye'); keyboard.close(); } }

Šī koda pirmajā palaišanārandomNumberir 7. Programma izpilda gadījumus no 7 līdz 10, unnoklusējums. Otrajā braucienārandomNumberir 3. Programma izpilda 3. un 4. gadījumu. Tāpēc, ka 4. gadījumam ir apārtraukumspaziņojumu, programma izlec noslēdzisun parādaUz redzēšanos.



image0.jpg

Theslēdzispaziņojumā daži trūkstpārtraukumspaziņojumi. Pat bez šiempārtraukumspaziņojumus, kods tiek sastādīts bez kļūdām. Bet, palaižot kodu, jūs nesasniedzat vēlamos rezultātus.