什么是Java中的类比较差异

火星人
public <T, V> void F1(T p1, V p2) {
    //Method 1
    if (p1.getClass() == p2.getClass()) {
    }

    //Method 2
    if (p1.getClass().equals(p2.getClass())) {
    }

    //Method 3
    if (p1.getClass().getName().equals(p2.getClass().getName())) {
    }
}

我想比较参数的类,

哪种方法更安全,或者3种用法有什么不同?

罗希特·贾恩(Rohit Jain)

这三种方法都将完成相同的任务。但理想情况下,您应该采用第一种方法。实际上,由于Class不覆盖equals()方法,因此无论如何都会调用Object#equals()方法。对于每个特定的类,每个类加载器也只有一个类实例,这也很有意义。因此,使用它们进行比较==会很好。

另外,我认为如果p1p2对应于由不同的类加载器加载的同一个类,则前两个条件为false,而最后一个条件true

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Matlab / Octave数组中获取/比较差异

来自分类Dev

array_search返回比较差异

来自分类Dev

比较差异与标准偏差

来自分类Dev

javascript null零比较差异背后的原因是什么?

来自分类Dev

javascript null零比较差异背后的原因是什么?

来自分类Dev

awk:提取2个时间戳列并比较差异

来自分类Dev

为什么在无法进行类比较的情况下?

来自分类Dev

在非活动类比较器中获取上下文

来自分类Dev

关于char *和数组字符串之间的字符串比较差异的说明

来自分类Dev

EasyMock中Mockito.spy / doReturn的类比是什么?

来自分类Dev

比较Java中的2D数组并打印差异

来自分类Dev

比较两个文件并在 Java 中打印差异

来自分类Dev

类比较,isKindOfClass在猕猴桃规范中不起作用

来自分类Dev

比较多列中的差异

来自分类Dev

Javascript中对象的Every()的类比

来自分类Dev

Javascript中对象的Every()的类比

来自分类Dev

在gnuplot中绘制pm3d映射的python类比是什么?

来自分类常见问题

如何在Java 8中比较两个日期之间的分钟差异,同时还要考虑时区差异?

来自分类Dev

如何动态比较javascript数组中的差异

来自分类Dev

比较表中的列,仅显示差异

来自分类Dev

PHP中的数组比较仅获得差异

来自分类Dev

moment.js 中的差异比较操作

来自分类Dev

比较数据框中特定列的差异

来自分类Dev

在Java中实现可比较项的两个已排序列表之间的差异

来自分类Dev

如何比较2数组并比较PHP中相同ID的差异?

来自分类Dev

与Java相比,F#性能较差。我究竟做错了什么?

来自分类Dev

C#通用比较方法【C++模板类比】

来自分类Dev

比较两个列表以计算差异-Android / Java

来自分类Dev

比较2个Java脚本对象以发现差异

Related 相关文章

热门标签

归档