Java assignment concerning exceptions

User Generated

qyhpxrl333

Programming

Description

I am stuck on the first part.  I included my code below.  It says my catch is not throwable.  The BadDataException class which it says I can use as a model is a try and catch exception.  Would appreciate any help.

assignment

First, create three exception classes named NumberHighException, NumberLowException, and NumberNegativeException. Both NumberHighException and NumberLowException should be directly subclassed from the Exception class, but NumberNegativeException should be subclassed from NumberLowException. You can use the BadDataException class that was defined in this module as the model for your exception classes.

Next create a class called Verify that will be used to validate that a number is within a specified range. It should have one constructor that has two int parameters. The first parameter is the minimum number in the range, and the second parameter is the maximum number in the range.

In addition to the constructor, the Verify class should have one method that is named validate. The validate method should have a single parameter of data type int. The parameter contains the number that is being validated. If the value of the parameter is less than zero, the method should throw a NumberNegativeException. If the value is less than the minimum value of the range, it should throw a NumberLowException. If the value is greater than the maximum value of the range, it should throw a NumberHighException. If the value is within the specified range, no exception should be thrown.

Once all of these classes are created, create the driver class called Program5. The driver class should instantiate a Verify object with a range of 10 to 100. It should then do the following:

    • Prompt the user to input a number within the specified range.

    • Use a Scanner to read the user input as an int. You can ensure that an int was entered because the nextInt method throws an InputMismatchException if any non-digits are entered.

    • Call the validate method to validate that the number is within the range.

    • Print an appropriate error message if the value is not within the range, or print the value if it is within the range.

      import java.util.Scanner;publicclass ExceptionTest
      {
        publicstaticvoid main(String[] args)
        {
       
       
      int x;
        Scanner input = new Scanner(System.in);
       
       
       
      try  {
       
        System.out.print(
      "Enter an integer >>  ");
        x = input.nextInt();
        }
       
       
      catch(NumberHighException e)
        {
        System.out.println(
      "Exception ocurred");
       
        }
        System.out.println(
      " x is " + x);
        //finally -need to add 
        }
       
      }

      error is

      ¼§ÏExceptionTest.java:18: error: incompatible types: NumberHighException cannot be converted to ThrowableÏϧϠ catch(NumberHighException e)

      I did one extends class so far

      publicclass NumberHighException extends Exception
      {
        public NumberHighException()
        {
        System.out.println(
      "Number is high");
        }
      }


User generated content is uploaded by users for the purposes of learning and should be used following Studypool's honor code & terms of service.

Explanation & Answer


Anonymous
Great! 10/10 would recommend using Studypool to help you study.

Studypool
4.7
Trustpilot
4.5
Sitejabber
4.4

Related Tags