Las excepciones incorporadas son las excepciones que están disponibles en las bibliotecas de Java. Estas excepciones son adecuadas para explicar ciertas situaciones de error. A continuación se muestra la lista de importantes excepciones integradas en Java.
Ejemplos de excepciones integradas:
- Excepción aritmética: Se lanza cuando se ha producido una condición excepcional en una operación aritmética.
// Java program to demonstrate
// ArithmeticException
class
ArithmeticException_Demo {
public
static
void
main(String args[])
{
try
{
int
a =
30
, b =
0
;
int
c = a / b;
// cannot divide by zero
System.out.println(
"Result = "
+ c);
}
catch
(ArithmeticException e) {
System.out.println(
"Can't divide a number by 0"
);
}
}
}
Producción:
Can't divide a number by 0
- Excepción ArrayIndexOutOfBounds: se lanza para indicar que se ha accedido a una array con un índice ilegal. El índice es negativo o mayor o igual que el tamaño de la array.
// Java program to demonstrate
// ArrayIndexOutOfBoundException
class
ArrayIndexOutOfBound_Demo {
public
static
void
main(String args[])
{
try
{
int
a[] =
new
int
[
5
];
a[
6
] =
9
;
// accessing 7th element in an array of
// size 5
}
catch
(ArrayIndexOutOfBoundsException e) {
System.out.println(
"Array Index is Out Of Bounds"
);
}
}
}
Producción:
Array Index is Out Of Bounds
- ClassNotFoundException: esta excepción se genera cuando intentamos acceder a una clase cuya definición no se encuentra.
// Java program to illustrate the
// concept of ClassNotFoundException
class
Bishal {
}
class
Geeks {
}
class
MyClass {
public
static
void
main(String[] args)
{
Object o =
class
.forName(args[
0
]).newInstance();
System.out.println(
"Class created for"
+ o.getClass().getName());
}
}
Producción:
ClassNotFoundException
- FileNotFoundException: esta excepción se genera cuando no se puede acceder a un archivo o no se abre.
// Java program to demonstrate
// FileNotFoundException
import
java.io.File;
import
java.io.FileNotFoundException;
import
java.io.FileReader;
class
File_notFound_Demo {
public
static
void
main(String args[])
{
try
{
// Following file does not exist
FileReader fr =
new
FileReader(file);
}
catch
(FileNotFoundException e) {
System.out.println(
"File does not exist"
);
}
}
}
Producción:
File does not exist
- IOException: se lanza cuando una operación de entrada-salida falla o se interrumpe
// Java program to illustrate IOException
import
java.io.*;
class
Geeks {
public
static
void
main(String args[])
{
FileInputStream f =
null
;
f =
new
FileInputStream(
"abc.txt"
);
int
i;
while
((i = f.read()) != -
1
) {
System.out.print((
char
)i);
}
f.close();
}
}
Producción:
error: unreported exception IOException; must be caught or declared to be thrown
- InterruptedException: se lanza cuando un subproceso está esperando, durmiendo o realizando algún procesamiento, y se interrumpe.
// Java Program to illustrate
// InterruptedException
class
Geeks {
public
static
void
main(String args[])
{
Thread t =
new
Thread();
t.sleep(
10000
);
}
}
Producción:
error: unreported exception InterruptedException; must be caught or declared to be thrown
- NoSuchMethodException: se lanza al acceder a un método que no se encuentra.
// Java Program to illustrate
// NoSuchMethodException
class
Geeks {
public
Geeks()
{
Class i;
try
{
i = Class.forName(
"java.lang.String"
);
try
{
Class[] p =
new
Class[
5
];
}
catch
(SecurityException e) {
e.printStackTrace();
}
catch
(NoSuchMethodException e) {
e.printStackTrace();
}
}
catch
(ClassNotFoundException e) {
e.printStackTrace();
}
}
public
static
void
main(String[] args)
{
new
Geeks();
}
}
Producción:
error: exception NoSuchMethodException is never thrown in body of corresponding try statement
- NullPointerException: esta excepción se genera cuando se hace referencia a los miembros de un objeto nulo. nulo no representa nada
// Java program to demonstrate NullPointerException
class
NullPointer_Demo {
public
static
void
main(String args[])
{
try
{
String a =
null
;
// null value
System.out.println(a.charAt(
0
));
}
catch
(NullPointerException e) {
System.out.println(
"NullPointerException.."
);
}
}
}
Producción:
NullPointerException..
- NumberFormatException: esta excepción se genera cuando un método no puede convertir una string en un formato numérico.
// Java program to demonstrate
// NumberFormatException
class
NumberFormat_Demo {
public
static
void
main(String args[])
{
try
{
// "akki" is not a number
int
num = Integer.parseInt(
"akki"
);
System.out.println(num);
}
catch
(NumberFormatException e) {
System.out.println(
"Number format exception"
);
}
}
}
Producción:
Number format exception
- StringIndexOutOfBoundsException: los métodos de la clase String la lanzan para indicar que un índice es negativo que el tamaño de la string.
// Java program to demonstrate
// StringIndexOutOfBoundsException
class
StringIndexOutOfBound_Demo {
public
static
void
main(String args[])
{
try
{
String a =
"This is like chipping "
;
// length is 22
char
c = a.charAt(
24
);
// accessing 25th element
System.out.println(c);
}
catch
(StringIndexOutOfBoundsException e) {
System.out.println(
"StringIndexOutOfBoundsException"
);
}
}
}
Producción:
StringIndexOutOfBoundsException
Algunas otras excepciones importantes
- ClassCastException
// Java Program to illustrate
// ClassCastException
class
Test {
public
static
void
main(String[] args)
{
String s =
new
String(
"Geeks"
);
Object o = (Object)s;
Object o1 =
new
Object();
String s1 = (String)o1;
}
}
Producción:
Exception in thread "main" java.lang.ClassCastException: java.lang.Object cannot be cast to java.lang.String
- StackOverflowError
// Java Program to illustrate
// StackOverflowError
class
Test {
public
static
void
main(String[] args)
{
m1();
}
public
static
void
m1()
{
m2();
}
public
static
void
m2()
{
m1();
}
}
Producción:
Exception in thread "main" java.lang.StackOverflowError
- No Error Clase Def Encontrado
// Java Program to illustrate
// NoClassDefFoundError
class
Test
//
{
public
static
void
main(String[] args)
{
System.out.println(
"HELLO GEEKS"
);
}
}
Producción:
Note: If the corresponding Test.class file is not found during compilation then we will get Run-time Exception saying Exception in thread "main" java.lang.NoClassDefFoundError
- ExceptionInInitializerError
Código 1:// Java Program to illustrate
// ExceptionInInitializerError
class
Test {
static
int
x =
10
/
0
;
public
static
void
main(String[] args)
{
}
}
Producción:
Exception in thread "main" java.lang.ExceptionInInitializerError Caused by: java.lang.ArithmeticException: / by zero
Código 2:
// Java Program to illustrate
// ExceptionInInitializerError
class
Test {
static
{
String s =
null
;
System.out.println(s.length());
}
public
static
void
main(String[] args)
{
}
}
Producción:
Exception in thread "main" java.lang.ExceptionInInitializerError Caused by: java.lang.NullPointerException
Explicación: la excepción anterior ocurre cada vez que se ejecuta una asignación de variable estática y un bloque estático si ocurre alguna excepción.
- Argumento de excepción ilegal
// Java Program to illustrate
// IllegalArgumentException
class
Test {
public
static
void
main(String[] args)
{
Thread t =
new
Thread();
Thread t1 =
new
Thread();
t.setPriority(
7
);
// Correct
t1.setPriority(
17
);
// Exception
}
}
Producción:
Exception in thread "main" java.lang.IllegalArgumentException
Explicación: la excepción la produce explícitamente el programador o el desarrollador de la API para indicar que se ha invocado un método con un argumento ilegal.
- IllegalThreadStateExceptionIlegalThreadStateException
// Java Program to illustrate
// IllegalStateException
class
Test {
public
static
void
main(String[] args)
{
Thread t =
new
Thread();
t.start();
t.start();
}
}
Producción:
Exception in thread "main" java.lang.IllegalThreadStateException
Explicación: la excepción anterior surge explícitamente por el programador o por el desarrollador de la API para indicar que se invocó un método en el momento equivocado.
- Error de aserción
// Java Program to illustrate
// AssertionError
class
Test {
public
static
void
main(String[] args)
{
// If x is not greater than or equal to 10
// then we will get the run-time exception
assert
(x >=
10
);
}
}
Producción:
Exception in thread "main" java.lang.AssertionError
Explicación: la excepción anterior surge explícitamente por el programador o el desarrollador de la API para indicar que la declaración de afirmación falla.
Este artículo es una contribución de Bishal Kumar Dubey . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA