Tuesday, 3 January 2023

Java Exceptions

 Java Exceptions

When executing Java code, different errors can occur: coding errors made by the

programmer, errors due to wrong input, or other unforeseeable things.

When an error occurs, Java will normally stop and generate an error message. The

technical term for this is: Java will throw an exception (throw an error).


What is an Exception?

An exception is an unwanted or unexpected event, which occurs during the execution of a

program i.e at run time, that disrupts the normal flow of the program’s instructions.


Error vs Exception

Error: An Error indicates serious problem that a reasonable application should not try to

catch.

Exception: Exception indicates conditions that a reasonable application might try to catch.


ExampleDivide by zero error

Invalid Input.

Opening a nonexistent file.

ERRORS IN JAVA

1.Compile-time errors

2.Run time errors

3.logical errors


COMPILE TIME ERRORS:

These errors are errors which prevents the code from compiling because of error in the syntax

such as missing a semicolon at the end of a statement or due to missing braces, class not

found, etc. These errors will be detected by java compiler and displays the error onto the screen

while compiling.

RUN TIME ERROR:

These errors are errors which occur when the program is running. Run time errors are not

detected by the java compiler. It is the JVM which detects it while the program is running.

LOGICAL ERRORS:

These errors are due to the mistakes made by the programmer. It will not be detected by a

compiler nor by the JVM. Errors may be due to wrong idea or concept used by a programmer

while coding.


What is Exception in Java?

Exception is an abnormal condition.

In Java, an exception is an event that disrupts the normal flow of the program. It is an

object which is thrown at runtime.


What is Exception Handling?

Exception Handling is a mechanism to handle runtime errors such as

ClassNotFoundException, IOException, SQLException, RemoteException, etc.

Advantage of Exception Handling

The core advantage of exception handling is to maintain the normal flow of the

application. An exception normally disrupts the normal flow of the application; that is

why we need to handle exceptions.


Java Exception Keywords

Java provides five keywords that are used to handle the exception. The following table

describes each.

Keyword Description

try -The "try" keyword is used to specify a block where we should place an exception

code. It means we can't use try block alone. The try block must be followed by either

catch or finally.


catch The "catch" block is used to handle the exception. It must be preceded by try block

which means we can't use catch block alone. It can be followed by finally block later.

finally The "finally" block is used to execute the necessary code of the program. It is

executed whether an exception is handled or not.


throw- The "throw" keyword is used to throw an exception.

throws -The "throws" keyword is used to declare exceptions. It specifies that there may occur

an exception in the method. It doesn't throw an exception. It is always used with

method signature.


Example Try and catch

public class Main {

 public static void main(String[ ] args) {

 try {

 int[] myNumbers = {1, 2, 3};

 System.out.println(myNumbers[10]);

 } catch (Exception e) {

 System.out.println("Something went wrong.");

 }

 }

}

The output will be:

Something went wrong.


Types of Exception

1) Built-in Exceptions

Built-in exceptions are the exceptions which are available in Java libraries.

These exceptions are suitable to explain certain error situations. Below is the

list of important built-in exceptions in Java.

1. ArithmeticException

It is thrown when an exceptional condition has occurred in an arithmetic operation.

2. ArrayIndexOutOfBoundsException

It is thrown to indicate that an array has been accessed with an illegal index. The index

is either negative or greater than or equal to the size of the array.

3. ClassNotFoundException

This Exception is raised when we try to access a class whose definition is not found

4. FileNotFoundException

This Exception is raised when a file is not accessible or does not open.

5. IOException

It is thrown when an input-output operation failed or interrupted

6. InterruptedException

It is thrown when a thread is waiting, sleeping, or doing some processing, and it is

interrupted.

7. NoSuchFieldException

It is thrown when a class does not contain the field (or variable) specified

8. NoSuchMethodException

It is thrown when accessing a method which is not found.

9. NullPointerException

This exception is raised when referring to the members of a null object. Null represents

nothing

10. NumberFormatException

This exception is raised when a method could not convert a string into a numeric format.

11. RuntimeException

This represents any exception which occurs during runtime.

12. StringIndexOutOfBoundsException

It is thrown by String class methods to indicate that an index is either negative or greater

than the size of the string

2) User-Defined Exceptions

Sometimes, the built-in exceptions in Java are not able to describe a certain situation. In

such cases, user can also create exceptions which are called ‘user-defined Exceptions’.

No comments:

Post a Comment