Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)
Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)
11th Edition
ISBN: 9780134670942
Author: Y. Daniel Liang
Publisher: PEARSON
bartleby

Concept explainers

Question
Book Icon
Chapter 12.7, Problem 12.7.1CP

a.

Program Plan Intro

Finally block:

Finally block contains block of code and the block is executed after a try-catch block.

  • If there is no errors in try block, finally statement is executed after try block executed.
  • If there is error in try block, then catch block caught the exception, rest of try block is skipped, and then executes the finally statement.
  • If there is error in try block, then catch block does not caught that exception, rest of try block is skipped, executes only finally statement, and then skip the rest of the code.
  • Thus, finally block handle such case and it contains block of statement. Once try-catch block gets executed, finally block is executed.

Rethrowing the exception:

  • An exception can be rethrown by a catch statement because; it can catch and handled by another catch statement.
  • It allows many handlers to access the exception.
  • However, the rethrown exception should not recaught by the same exception and should propagate to next catch statement.

In following class, first catch statement catches exception and rethrows it to another catch statement:

class Rethrow_exp

{

try

{

//... Try block statement

}

Catch statement rethrows the exception.

catch(Excep_type excep_obj)

{

//... Catch block statement

// Rethrow the exception

throw excep_obj

}

//...

}

Catch statement catches the rethrown the exception.

class rethrow_main

{

//...

catch(Excep_typeexcep_obj)

{

// Recatch block statement catches rethrown //exception

}

}

Therefore, an inner catch rethrow an exception to an outer catch.

Given code:

//Try block

try

{

statement1;

statement2;

statement3;

}

//Catch block

catch (Exception1 ex1)

{

}

//Catch block

catch (Exception2 ex2)

{

}

//Finally block

finally

{

statement4;

}

statement5;

b.

Program Plan Intro

Finally block:

Finally block contains block of code and the block is executed after a try-catch block.

  • If there is no errors in try block, finally statement is executed after try block executed.
  • If there is error in try block, then catch block caught the exception, rest of try block is skipped, and then executes the finally statement.
  • If there is error in try block, then catch block does not caught that exception, rest of try block is skipped, executes only finally statement, and then skip the rest of the code.
  • Thus, finally block handle such case and it contains block of statement. Once try-catch block gets executed, finally block is executed.

Rethrowing the exception:

  • An exception can be rethrown by a catch statement because; it can catch and handled by another catch statement.
  • It allows many handlers to access the exception.
  • However, the rethrown exception should not recaught by the same exception and should propagate to next catch statement.

In following class, first catch statement catches exception and rethrows it to another catch statement:

class Rethrow_exp

{

try

{

//... Try block statement

}

Catch statement rethrows the exception.

catch(Excep_type excep_obj)

{

//... Catch block statement

// Rethrow the exception

throw excep_obj

}

//...

}

Catch statement catches the rethrown the exception.

class rethrow_main

{

//...

catch(Excep_typeexcep_obj)

{

// Recatch block statement catches rethrown //exception

}

}

Therefore, an inner catch rethrow an exception to an outer catch.

Given code:

//Try block

try

{

statement1;

statement2;

statement3;

}

//Catch block

catch (Exception1 ex1)

{

}

//Catch block

catch (Exception2 ex2)

{

}

//Finally block

finally

{

statement4;

}

statement5;

c.

Program Plan Intro

Finally block:

Finally block contains block of code and the block is executed after a try-catch block.

  • If there is no errors in try block, finally statement is executed after try block executed.
  • If there is error in try block, then catch block caught the exception, rest of try block is skipped, and then executes the finally statement.
  • If there is error in try block, then catch block does not caught that exception, rest of try block is skipped, executes only finally statement, and then skip the rest of the code.
  • Thus, finally block handle such case and it contains block of statement. Once try-catch block gets executed, finally block is executed.

Rethrowing the exception:

  • An exception can be rethrown by a catch statement because; it can catch and handled by another catch statement.
  • It allows many handlers to access the exception.
  • However, the rethrown exception should not recaught by the same exception and should propagate to next catch statement.

In following class, first catch statement catches exception and rethrows it to another catch statement:

class Rethrow_exp

{

try

{

//... Try block statement

}

Catch statement rethrows the exception.

catch(Excep_type excep_obj)

{

//... Catch block statement

// Rethrow the exception

throw excep_obj

}

//...

}

Catch statement catches the rethrown the exception.

class rethrow_main

{

//...

catch(Excep_typeexcep_obj)

{

// Recatch block statement catches rethrown //exception

}

}

Therefore, an inner catch rethrow an exception to an outer catch.

Given code:

//Try block

try

{

statement1;

statement2;

statement3;

}

//Catch block

catch (Exception1 ex1)

{

}

//Catch block

catch (Exception2 ex2)

{

throw ex2;

}

//Finally block

finally

{

statement4;

}

statement5;

d.

Program Plan Intro

Finally block:

Finally block contains block of code and the block is executed after a try-catch block.

  • If there is no errors in try block, finally statement is executed after try block executed.
  • If there is error in try block, then catch block caught the exception, rest of try block is skipped, and then executes the finally statement.
  • If there is error in try block, then catch block does not caught that exception, rest of try block is skipped, executes only finally statement, and then skip the rest of the code.
  • Thus, finally block handle such case and it contains block of statement. Once try-catch block gets executed, finally block is executed.

Rethrowing the exception:

  • An exception can be rethrown by a catch statement because; it can catch and handled by another catch statement.
  • It allows many handlers to access the exception.
  • However, the rethrown exception should not recaught by the same exception and should propagate to next catch statement.

In following class, first catch statement catches exception and rethrows it to another catch statement:

class Rethrow_exp

{

try

{

//... Try block statement

}

Catch statement rethrows the exception.

catch(Excep_type excep_obj)

{

//... Catch block statement

// Rethrow the exception

throw excep_obj

}

//...

}

Catch statement catches the rethrown the exception.

class rethrow_main

{

//...

catch(Excep_typeexcep_obj)

{

// Recatch block statement catches rethrown //exception

}

}

Therefore, an inner catch rethrow an exception to an outer catch.

Given code:

//Try block

try

{

statement1;

statement2;

statement3;

}

//Catch block

catch (Exception1 ex1)

{

}

//Catch block

catch (Exception2 ex2)

{

throw ex2;

}

//Finally block

finally

{

statement4;

}

statement5;

Blurred answer
Students have asked these similar questions
PLZ help with the follwoing IN JAVA Suppose that statement2 causes an exception in the following try-catch block: Will statement3 be executed? If the exception is not caught, will statement4 be executed? If the exception is caught in the catch block, will statement4 be executed?
Suppose that statement2 causes an exception in the following statement: 1 try { 2 statement1; 3 statement2; 4 statement3;5 } 6 Catch (Exception ex1) 7 { 8 } 9 10 catch (Exception2 ex2) 11 { 12 throw ex2; 13 } 14 catch (Exception3 ex3) 15 { 16 } 17 finally { 18 statement4; } statement5;b. What will be the output the above mentioned code if we comment out the code from line 6 toline 16.iii. In square root if the value of number is negative throws IllegalArgumentException and of print message "square root is not possible". Create main class that display one normal execution of squareroot and one with exception case.     Subject: Java Programming
The following program simulates a vending machine panel. The program gets an integer that represents the user's selected item, and then outputs a dispensing message. Only 8 items are for purchase. Ex: The input 2 results in the message "Dispensing item 2". Arrange the following lines to handle two exceptions. If the user enters an item number that is not for purchase, the program throws an Exception with the message "Try again", outputs the exception message, and then tries again. If the user enters a non-integer input, the program throws an InputMismatchException, outputs "Fatal error", and then exits.

Chapter 12 Solutions

Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)

Ch. 12.4 - Prob. 12.4.3CPCh. 12.4 - Prob. 12.4.4CPCh. 12.4 - Prob. 12.4.5CPCh. 12.4 - Prob. 12.4.6CPCh. 12.4 - What is displayed when running the following...Ch. 12.4 - Prob. 12.4.8CPCh. 12.4 - What does the method getMessage() do?Ch. 12.4 - What does the method printStackTrace() do?Ch. 12.4 - Prob. 12.4.11CPCh. 12.4 - Prob. 12.4.12CPCh. 12.5 - Prob. 12.5.1CPCh. 12.6 - Prob. 12.6.1CPCh. 12.7 - Prob. 12.7.1CPCh. 12.8 - Prob. 12.8.1CPCh. 12.9 - Prob. 12.9.1CPCh. 12.9 - Prob. 12.9.2CPCh. 12.10 - What is wrong about creating a File object using...Ch. 12.10 - How do you check whether a file already exists?...Ch. 12.10 - Can you use the File class for I/O? Does creating...Ch. 12.11 - Prob. 12.11.1CPCh. 12.11 - Prob. 12.11.2CPCh. 12.11 - Prob. 12.11.3CPCh. 12.11 - Prob. 12.11.4CPCh. 12.11 - What will happen if you attempt to create a...Ch. 12.11 - Prob. 12.11.6CPCh. 12.11 - Suppose you enter 45 57, 8 789, then press the...Ch. 12.11 - Prob. 12.11.8CPCh. 12.12 - How do you create a Scanner object for reading...Ch. 12.13 - Prob. 12.13.1CPCh. 12.13 - Simplify the code in lines 20-28 as follows: 1....Ch. 12 - Prob. 12.1PECh. 12 - (InputMismatchException) Write a program that...Ch. 12 - (ArrayIndexOutOfBoundsException) Write a program...Ch. 12 - (IllegalArgumentException) Modify the Loan class...Ch. 12 - (IllegalTriangleException) Programming Exercise...Ch. 12 - (NumberFormatException) Listing 6.8 implements the...Ch. 12 - Prob. 12.7PECh. 12 - Prob. 12.8PECh. 12 - Prob. 12.9PECh. 12 - Prob. 12.10PECh. 12 - Prob. 12.11PECh. 12 - (Reformat Java source code) Write a program that...Ch. 12 - (Count characters, words, and lines in a file)...Ch. 12 - (Process scores in a text file) Suppose a text...Ch. 12 - (Write/read data) Write a program to create a file...Ch. 12 - Prob. 12.16PECh. 12 - (Game: hangman) Rewrite Programming Exercise 7.35....Ch. 12 - Prob. 12.18PECh. 12 - (Count words) Write a program that counts the...Ch. 12 - Prob. 12.20PECh. 12 - (Data sorted?) Write a program that reads the...Ch. 12 - Prob. 12.22PECh. 12 - (Process scores in a text file on the Web) Suppose...Ch. 12 - (Create large dataset) Create a data file with...Ch. 12 - (Create a directory) Write a program that prompts...Ch. 12 - Prob. 12.26PECh. 12 - (Replace words) Suppose you have a lot of files in...Ch. 12 - (Rename files) Suppose you have a lot of files in...Ch. 12 - (Rename files) Suppose you have several files in a...Ch. 12 - (Occurrences of each letter) Write a program that...Ch. 12 - (Baby name popularity ranking) The popularity...Ch. 12 - (Ranking summary) Write a program that uses the...
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,