开发者社区 问答 正文

equals问题

对象.getgetClass().equals(类),判断对象的类和比较的类是否是一个类 但有个问题Class并没有重写equals方法,那么就是比较地址,就相当于 对象.getgetClass()==类。这明显是不对的

展开
收起
蛮大人123 2016-03-12 15:07:44 2120 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    Class 在 jvm 里面只有一个实例,只要你的Class是完全一样的肯定是相等的,但是不能判断是不是同一类型,同一类型使用判断推荐使用 instanceof
    测试代码:

    System.out.println(tc.getClass() == getClass());//true
    System.out.println(tc.getClass() == TestClass.class);//true
    System.out.println(tc.getClass().equals(getClass()));//true
    System.out.println(tc.getClass().equals(TestClass.class));//true
    2019-07-17 19:00:59
    赞同 展开评论
问答地址: