Aggiungo: la JVM va a cercare a ritroso (lungo lo stack delle chiamate) il PRIMO catch che è in grado di gestire la eccezione lanciata.
Il catch in method1() è in grado di gestire sia RuntimeException che MyException (che è-un RuntimeException)? Sì, stop. La eccezione non esce nemmeno dal metodo!