or que não chamar um método estático por meio de uma instância como um erro para o compilador Jav

Tenho certeza que todos vocês conhecem o comportamento que eu quero dizer - códigos como:

Thread thread = new Thread();
int activeCount = thread.activeCount();

provoca um aviso do compilador. Por que não é um erro?

EDITAR

Para ser claro: a questão não tem nada a ver com tópicos. Percebo que os exemplos do Thread são frequentemente dados ao discutir isso devido ao potencial de realmente atrapalhar as coisas com eles. Mas o problema é que esse uso ésempr absurdo e você não pode (com competência) escrever uma ligação dessas e dizer a verdade. Qualquer exemplo desse tipo de chamada de método seria desagradável. Aqui está outro:

String hello = "hello";
String number123AsString = hello.valueOf(123);

O que faz parecer que cada instância String vem com um método "String valueOf (int i)"

questionAnswers(11)

yourAnswerToTheQuestion