Following the course on exceptions, where i explain that a catch() is an instanceof, two different students ask me why catch() can use '|' in between the exception types but instanceof can not.
i.e why this code works
try {
...
} catch(RuntimeException | Error e) {
throw e;
} catch(Throwable t) {
...
}
but this one doesn't
try {
...
} catch(Throwable t) {
if (t instanceof RuntimeException | Error e) {
throw e;
}
...
}
I wonder if people will want to do pattern matching on exceptions ?
Rémi
