lunes, 22 de septiembre de 2008

Los bloques de Inicialización

Los bloques de inicialización, son bloques que se ejecutan en algún momento:
  • Bloques Estáticos --> Se ejecutan una única vez, cuando se carga en memoria la clase
  • Bloques No Estáticos --> Se ejecutan cada vez que se crea una nueva instancia.


La salida de este código seria:

Bloque Estatico
Bloque 1
Bloque 2
Bloque 1
Bloque 2

Como podéis ver, el orden de ejecución de los bloques es tal cual estan ordenados, incluso pueden estar entremezclados con los métodos.

En caso que se produzca alguna excepción en un bloque de inicialización estático, se produce un java.lang.ExceptionInInitializerError, cuya causa es la excepción original.

No hay comentarios: