3 回答
已采纳
JustWannaHugU
TA贡献452条经验 获得超796个赞
Object是任何类的父类;推一下:因为Object 的子类是Animal,Animal的子类是Dog
推出Object的子类是Dog
在这个视频中obj是Object类的一个实例对象
你困惑的代码是重写后的equals方法
这段代码要传入一个Object对象的;
Dog other=(Dog)obj这段代码的作用是:在两个对象(obj和当前比较对象)是相同类型的情况下,将obj类强制转换成Dog子类型,再比较两个变量的属性值是否相等,目的是为了判断两个对象是否相同~
getClass是反射知识,你以后才会学到,不过你要清楚的是,Dog other=(Dog)obj是向下转型,在保证安全的情况下(经过getclass()的判断已经能保证是同一个对象了),才可以将大类型的强制转化成小类型的对象~
JustWannaHugU
TA贡献452条经验 获得超796个赞
没找到你说的视频是哪个?...
重写equals那一节没有obj和other啊...
你也不发链接,
还有这个问题:放在同一个类里面才能比较他们的属性吗?
不知道你哪不懂
JustWannaHugU
TA贡献452条经验 获得超796个赞
这行代码的意思是把obj强制转换成Dog类型的对象
这属于向下转型,应该是有他的目的,具体代码具体分析
Dog类是obj所属类的一个具体子类~
添加回答
举报
0/150
提交
取消