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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhouxp3323 黑马帝   /  2012-3-17 18:21  /  1767 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我看Collection集合里面的equals方法,里面老是有比如说Person类有name属性,
public boolean equals(Object obj)
Person p = (Person)obj;
return this.name.equals(p.name)
这里面的this是指调用该方法的对象,那p是什么啊?

4 个回复

正序浏览
p是调用该方法是传递进去的那个对象  调用equals方法需要传递进去一个参数,比如
Object obj1 = new Object();
Person  P1  = new Person();
p1.equals(obj);  这时equals里边的this就代表p1,里边的p即代表obj1

评分

参与人数 1技术分 +1 收起 理由
房宝彬 + 1

查看全部评分

回复 使用道具 举报
p可以理解为,你把接收到的obj强转成Person类型的引用。
而这个p可以调用Person这个类里面的属性和行为。

评分

参与人数 1技术分 +1 收起 理由
房宝彬 + 1

查看全部评分

回复 使用道具 举报
p传进来的obj的引用
回复 使用道具 举报
Person p = (Person)obj;    p就是equals(Object obj)方法里的这个对象啊。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马