Quais erros e exceções de Java podem (não) ser gerados por "declarações vazias"?
Qual subclasse (s) dejava.lang.Throwable
pode ser jogado por uma declaração vazia?
Pela frase "uma declaração vazia", eu soureferindo-se a o "nada", o "ponto e vírgula" e o "ponto e vírgula":
// ....
A(); B(); C();
try {
// nothing
} catch (java.lang.Throwable e) {
// which Throwable subclass might we see?
}
D(); E(); F();
try {
; // semi-colon
} catch (java.lang.Throwable e) {
// which Throwable subclass might we see?
}
G(); H(); I();
try {
; ; ;; ;;;;; ; ; ;;; ;; ;; ;; ;; ; ;; ; ;; // ... semi-colons
} catch (java.lang.Throwable e) {
// which Throwable subclass might we see?
}
J(); K(); L();
// ....
Qual subclasses de Throwable podem ser lançadas entreA();
eB();
ou entreC();
eD();
ou entreF();
eG();
ou entreI();
eJ();
?
Ou melhor,qual subclasses de Throwable sãogarantido não aparecer entre essas declarações?
Os que eu conheço até agora é oInternalError
, aOutOfMemoryError
, aStackOverflowError
, e asUnknownError
.