Java集合3-11表述有问题,可能会引起误解?
原句如下:
getClass()是Object类的方法,该方法的返回值类型是Class类,通过getClass()方法可以得到一个Class类的对象。而.class返回的也是Class类型的对象。所以,如果obj.getClass()和Cat.class返回的内容相等,说明是同一个对象。
最后一句的表达,甚至整个句子都是有问题的,如果getClass和class都是返回对象,怎么确保同时返回同一个对象,它们指向同一个地址??
其实就是很简单的事情,很容易说清的事情,两者都是返回调用这个函数的对象的 类型 判断两个对象的 类型是否相等, 而不是判断这两个对象是否相等, 写了一堆让人发生歧义的话
35
收起
正在回答
1回答
getClass()和class()返回的对象确实是同一个。
你可以自己试验,hashCode()可以返回对象的内存地址
Cat cat = new Cat(); System.out.println(cat.getClass().hashCode()); System.out.println(Cat.class.hashCode());
java工程师2020版
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星