A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 鱼饵 中级黑马   /  2015-5-15 09:43  /  379 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public boolean equals(Object obj)
{
        if(!(obj instancdof Person)
                return false;
        Person p (Person)obj;
        System.out.println(this.name+"...“+p.name);
        return this.name.equals(p.name) && this.age == p.age;
}
大神给解释一下这两句是什么意思没看懂。
        if(!(obj instancdof Person)
        return false;

6 个回复

倒序浏览
判断obj是否属于Person类,如果是的话返回true 否则false,obj instancdof Person如果是真的话说明obj属于Person类型,!的话就是不是person类型所以返回false,因为你接下来要转换成Person类型。如果不判断的话当你传一个不是person类型的对象进来,而你又强转成person的话应该是报类型转换异常吧
回复 使用道具 举报
obj是不是Person型的,如果不是就返回false
回复 使用道具 举报
if(!(obj instancdof Person)
        return false;
用于判断传入的obj是否Person型的!如果不是则结束返回false
回复 使用道具 举报
obj是不是Person型的,如果不是就返回false
回复 使用道具 举报
二楼正解啦
回复 使用道具 举报
你单词拼错了吧?难道不是“instanceof”如果是的就判断obj是否是person类或之间有无继承关系
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马