Itu datang ke kompiler yang sebenarnya dan kemampuannya untuk membedakan apa arti token dalam konteksnya. Namun, dalam kasus khusus ini, ketidakmampuan kompiler untuk membedakan apa arti token classdalam konteks yang berbeda. Merupakan aturan yang keras dan cepat bahwa class, terlepas dari konteksnya, digunakan untuk menunjukkan deklarasi kelas, dan karenanya merupakan kata yang dilindungi undang - undang . Itu sesederhana dan serendah mungkin.
Jika Anda merasa harus, Anda bisa menulis kompiler Java Anda sendiri untuk memasukkan aturan kontekstual yang akan memungkinkan Anda untuk digunakan classsebagai nama variabel. Meskipun saya pikir akan jauh lebih baik menggunakan waktu Anda untuk hanya menggunakan clazzatau klass- mungkin akan baik untuk kesehatan Anda juga.