需要根据他们实现的类比较两个对象?什么时候比较使用getClass()和getClass()。getName()?
这种比较两种对象类类型(名称)的方法有什么不同吗?
public abstract class Monster { ... }
public class MonsterTypeOne extends Monster { ... }
public class MonsterTypeTwo extends Monster { ... }
Monster monster = MonsterTypeOne();
Monster nextMonster = MonsterTypeTwo();
if(nextMonster.getClass().getName().equals(monster.getClass().getName()) )// #1
if(nextMonster.getClass().equals(monster.getClass()) )// #2
编辑1
关于什么: ?
nextMonster.getClass().equals(MonsterTypeOne.class)