Usuario:Iho jose/diccionario/Z/Zona de estudios/3
Zona de pruebas
Zona de estudios
2,
3,
4,
5,
6,
7
Comienzo de clases de Programmer de JAVA 8... Notas de las clases.
Excepciones
[editar]Son situaciones que pasan cuando algo inesperado sucede en el programa. JAVA no sabe que hacer si sucede una excepción.
Hay diferentes de excepciones, estas son las más comunes:
java.lang.ArrayIndexOutOfBoundsException
, cuando se quiere entrar a una posición inexistente.java.lang.ClassCastException
, cuando no se relaciones.java.lang.NullPointerException
, Cuando no se apunta a nada.
Podemos crear una excepción extendiendo de la clase Exception
.
Tipos de excepciones:
Error
, Es un error que es más grave que una excepción.RuntimeException
, (Excepciones en tiempo de ejecución) son Unchecked.Exception
, son las excepciones son Checked.- Las excepciones Checked son las excepciones diferentes a las RuntimeException y las Unchecked son las RuntimeException.
- Las Checked son excepciones por temas y/o recursos externos (SQL, External CRUD).
- Las Unchecked, son errores cometidos por el programador. No están obligadas a ejecutarse por medio de try catch.
Hay tres partes fundamentales en una excepción.
[editar]- try {
- catch () {
- finally {
Perro p;
try {
p.comer();
} catch(NullPointerException e) {
System.out.println("Null");
} finally {
System.out.println("Siempre se ejecuta");
}
public static void main(String [] args) {
try (Perro p = new Perro();
Gato g = new Gato();) {
} catch (IOException | NullPointerException | ArithmeticException e) {
// Multi catch
}
}
public static void main(String[] args) throws IOException {
// Delega excepciones
try {
} catch (NullPointerException e) {
System.out.println("Null");
throw new FileNotFoundException(); // Lanza FileNotFound
}
}
Reglas de excepciones
[editar]- Si el método del padre lanza una excepción cuando se sobrescribe el método no lo obliga a lanzarla.
- Si el método del padre lanza una excepción el método del hijo puede lanzar una excepción.
- Si el método del padre lanza una excepción Checked el método del hijo puede lanzar excepciones Unchecked (únicamente).
- Si el método del padre no lanza excepciones, en el método del hijo puede lanzar Uncheked.
- Si el método del padre lanza una excepción en el método del hijo, puede lanzar hijos de la excepción y/u otras Unchecked.
- Se puede lanzar excepciones Checked pero no se pueden manejar estas excepciones si no hay nada que las provoque.
public static void main(String [] args) {
try {
} catch (Exception e) {
e.printStackTrace();
}
}
Aserciones
[editar]Se usa para asegurarse de invariantes internas, para verificar el control de flujo para verificar las invariantes de estos. Se puede usar para chequear parámetros públicos.
Módulo 4 (Programmer)
[editar]Clases estáticas
[editar]Modificadores de acceso.
Modificador | Misma clase | Mismo paquete | Subclase u otros paquetes | Universal |
---|---|---|---|---|
private
|
Si | |||
default
|
Si | Si | ||
protected
|
Si | Si | Si | |
public
|
Si | Si | Si | Si |
public class Animal {
public void dormir() {
System.out.println("Duerme como animal");
}
}
// --
public class Perro extends Animal {
public void dormir() {
System.out.println("Duerme como perro");
}
}
Inicializadores
[editar]Es un método pero no es un método. Los inicializadores no estáticos se ejecutan antes que el constructor. Los inicializadores estáticos se ejecutan sin necesidad de instanciar la instanciar la clase y solo se ejecutan una vez en todo el aplicativo y se ejecutan antes que los inicializadores no estáticos.
Singleton
[editar]El patrón de diseño singleton se asegura de que cada vez que se usa devuelve una sola instancia durante todo el ciclo de vida de aplicativo.