Java Exception Handling
- EXCEPTION HIERARCHY
- USER-DEFINED EXCEPTIONS
- HOW DOES JVM HANDLE EXCEPTION
Exception handling is a highly efficient method of addressing runtime errors in Java programs as it guarantees regular program operation.
We will study the types of Java exceptions and how
they differ from one another in this lesson. and unreviewed exclusions.
A non-trivial or unexpected event that occurs
during program execution and interferes with, in Java, the usual execution of a
program's instructions is called an exception. The software understands how to
handle an exception. Every time a procedure throws an exception, an object is
produced. An exception object is what is referred to as such. This file
contains the name, description, and program status as of the exception occurrence.
The main reasons for the exception occurring are Incorrect
user input Device error Network connection failure limitations (external
disk storage) Code error and inability to open an accessible file.
In Java, non-trivial or unexpected events that
occur during program execution that obstruct regular program execution are
referred to as exceptions. The software understands how to handle an exception.
Every time a procedure throws an exception, an object is produced. An exception
object is what is referred to as such. This file includes details about the
exception, including its name, description, and the state of the application at
the time it occurred.
The main reasons for the exception occurring are user input Device error Network connection failure limitations (external
disk storage)Code error unable to open an accessible file.
Error: An error provides information or indicates
or shows a serious problem that no sane software should attempt to detect.
Exception: An exception gives details or points out
circumstances that a reasonable program could try to detect.
Exception
hierarchy
Every other exception and error type is descended
from the Throwable class. One section is overseen by a reception. This class is
used by user programs when they need to catch exceptions. The
Null-Pointer-Exception is one of these exceptions. The Java Runtime Environment
(JRE) itself uses the second branch, Error, to detect runtime-related errors
made by the Java Runtime System (JVM). One such error example is the
Stack-Overflow-Error.
Types of exception
Exceptions can be classified in two ways: Built-in
Exceptions-Challenged Exception-Unhandled Exception-User Defined Exceptions
Let us discuss the above exception which is as
follows: 1. Built-in Exceptions - these are exceptions available in Java
libraries. These exceptions are useful for explaining certain error situations.
Checked exceptions: Checked exceptions are called
compile-time exceptions because the compiler checks for them during
compilation.
Unchecked exceptions: these are not checked, in
contrast to checked exceptions. The compiler does not search for these
exceptions during compilation. To put it another way, a compilation fault won't
be triggered whether we handle or report an unchecked exception that a program
raises.
User-Defined
Exceptions:
Regretfully, there are times when Java's built-in
exceptions just aren't sufficient. Thus, "user-defined exceptions"
might also be made by users.
The advantage of using exception handling in Java
is Program completion.
We can easily identify the errors in the code and
handle them using code-Propagation of errors-Important error
message-Identification of error typescript methods Exception information.
1. printStackTrace()
The Name of the Exception, Stack Trace, and Description of the Exception are all included in the method's formatted output.
Let us try this with a program:
//program to print the
exception information using the printStackTrace() method
Output
java. lang.ArithmeticException: / by zeroat sdf.main(File.java:10)
2. toString()
Exception information is printed via the ToString() function. Name: Exception Description.
Ex. // program that uses the toString() function to output the error information
Output
java. lang.ArithmeticException: / by zero
getMessage()
The getMessage() method only prints the exception description.
Ex. // program that uses the getMessage() function to
output the exception information
Output
by
zero
How does
JVM handle Exception?
A method's default response to an exception is to
generate an exception object and send it to the Java Virtual Machine (JVM). The
name, description, and current state of the application, along with any other
relevant data, are all contained in the exception object. When the runtime
system creates and handles an exception object, an exception is
"thrown". It's possible that several methods were called to enable
the problematic method. This collection of techniques is called the Call Stack.
This is when something else occurs.
The runtime system looks for a method in the call
stack that contains the exception handling code. This portion of code is also
known as the exception handler.
The runtime system searches for the code that threw
the exception by starting at the top of the call stack and moving down.
When it finds a suitable handler, it steps through
the exception whom it The thrown object type of an exception must match the
exception's type for a handler to be considered suitable.
The exception is issued again if after the runtime
system has examined every method on the call stack, no suitable handler is
discovered. To the default exception handler of the runtime system. Should an
unusual program termination occur, this handler will output pertinent exception
data in the manner shown below.
Exception in thread "xxx" Name of Exception: Description
... ...... .. // Call Stack
Here we will examine an example that shows how the runtime system searches the call stack for the correct
code to handle exceptions.
}
}
Output
by zero
No comments:
Post a Comment