Since this is an exception, the program can handle it (with the right code.)
try{}
and catch{}
To catch an exception:
try{}
block.catch{}
block.Here is the example program with code added to do this:
import java.util.* ; public class SquareFix { public static void main ( String[] a ) throws IOException { Scanner scan = new Scanner( System.in ); int num ; System.out.print("Enter an integer: "); try { num = scan.nextInt(); System.out.println("The square of " + num + " is " + num*num ); } catch ( InputMismatchException ex ) { System.out.println("You entered bad data." ); System.out.println("Run the program again." ); } System.out.println("Good-by" ); } }
If a statement inside the try{}
block throws a
InputMismatchException
,
the catch{}
block immediately starts running.
The remaining statements in the try{}
block are skipped.
The reference variable ex
refers to
the Exception
object.
(However, this example does nothing with it.)
After the catch{}
block is executed,
execution continues
with the statement that follows the catch{}
block.
Execution does not return to the try{}
block.
What does the program print for each input?
input 1: | input 2: |
---|---|
Rats | 12 |
|
|