A exceção só pode ser lançada através da sua referência, por exemplo:
ArithmeticException exception = new ArithmeticException();
throw exception;
Eu acredito que essa afirmativa está correta.
Se olharmos na documentação da linguagem podemos ver:
Ou seja throw
recebe um objeto que que pose ser "jogado" e pelo menos até agora a única forma que vimos de passar um objeto é através de sua referência. E das duas formas que vimos na aula estamos passando uma referência.
ArithmeticException exception = new ArithmeticException();
aqui armazenamos a referência na variável e passamos para othrow
;throw new ArithmeticException();
aqui a referência é criada e em seguida já é passada para othrow
;
Então se nas únicas formas que vimos até agora estamos passando uma referência acredito que essa afirmativa deveria ser considerada correta.
Eu entendi que a essência da pergunta questiona a necessidade de armazenar a referência a exceção antes de jogá-la e inclusive acertei o exercício mas acredito que conceitualmente ela ficou falha.