蜡笔不xla0心
2016-09-13 20:47
这里是只有实例化的对象用equals()比较才需要重写是吗?要是平时,比方说赋值int a=0;int b=0;然后比较a是否等于b就不需要重写是为什么,难道a和b不需要分配地址吗
因为a,b是基本类型,并且不是你写的那个类的成员变量,所以a,b是不能用equals比较的,如果强行用equals比较,则会编译报错。你提到重写,重写的概念是在需要在子类中重写其父类的方法,可是,基本类型有父类吗?没有,所以重写基本类型的数据的equals方法这一概念就不存在。至于分配内存这个问题,在调用它们的时候,肯定分配了内存给它们。所以,这是为何基本类型只能用==比较,而不能用equals。
a和b是int类型,字符串用equals().
因为两种都是数据类型
Java入门第二季 升级版
530560 学习 · 6091 问题
相似问题