A inferência do tipo Java 10 para variáveis locais pode inferir nulo?

Com o Java 10, podemos usar a inferência de tipo.

String s1 = "hello"; // before Java 10
var s2 = "hello"; // now

No entanto, há uma coisa que não podíamos fazer antes: ter variáveis do tipovazio.

Então, nas versões anteriores, simplesmente não podíamos definir o tipo de variávelvoid. Mas agora podemos atribuir o resultado do método retornandovoid para a variável:

void emptyMethod() { }
...

void v1 = emptyMethod(); // won't compile
var v2 = emptyMethod(); // no problem at all

A questão é: por que ela compila, a que finalidade serve? Você tem algum caso de uso para essa coisa estranha?

Variável do tipovoid não possui métodos, nem sequer pode ser usado como parâmetro de um método.

questionAnswers(1)

yourAnswerToTheQuestion