Eventuali duplicati:
Does Java guarantee that Object.getClass() == Object.getClass()?Si può confrontare gli oggetti java.lang.Class con == in Java?
Se ho una classe come
Class<? extends MyObject> aClass = ...;
posso poi fare:
if (aClass == MySubObject.class) { ... }
o devo fare
if (aClass.equals(MySubObject.class)) { ... }
Inoltre, a seguito di conoscere la risposta, mi piacerebbe sapere un riferimento vale a dire in cui questo è definito.
Preferisco utilizzare ==
se possibile, perché lo trovo più leggibile e più veloce. (Ovviamente non è che molto più leggibile, o che molto più veloce, ma ancora, perché usare una soluzione più complessa, se una soluzione più semplice è disponibile.)
http://stackoverflow.com/questions/3738919/does-java-guarantee-that-object-getclass-object-getclass –
Un altro http://stackoverflow.com/questions/928531/does-java-have -an-is-kind-of-class-test-method –
http://stackoverflow.com/questions/5997801/java-comparing-classes-with-or-equals-is-there-a-difference –