A może dlatego, że dla większości "szarych" programistów zapis:
Class c = class;
sugerowałby, że można zrobić też tak:
Double d = double;
lub
Class d = double;
Skoro jedno słowo kluczowe może być zmienną to dlaczego nie pozostałe?
Po drugie zgodnie z Twoją filozofią można by też zapisać tak:
Field f = class.getField("abc");
jeśli dla słowa kluczowego class
można wywołać metodę, to dlaczego nie dla pozostałych klas:
Field f = interface.getField("abc");
Field f = enum.getField("abc");
albo odwołać się do pól:
int maxValue = int.MAX_VALUE;
przecież taki zapis bez problemu można by przetłumaczyć w trakcie kompilacji, podstawiając pod int
po prawej stronie klasę Integer
.
To, że możesz wywnioskować import bez podania nazwy klasy, w tej sytuacji jest chyba mało istotne. Jeśli zasadą jest, że pola i metody mają klasy, a nie słowa kluczowe, to twórcy chyba trzymali się tej zasady.