论坛: 编程破解 标题: JAVA编译错误 复制本贴地址    
作者: group [group]    论坛用户   登录
代码:

class MyKey
{
private String name;
private int age;
public MyKey(String name,int age)
{
this.name = name;
this.age = age;
}

public String toString()
{
return new String(name + "," + age);
}

//用自己写的equals函数覆盖,如果两个人的名字和年龄都相同,就认为是同一个人
public boolean equals(Object obj)
{
if(name.equals(obj.name) && age==obj.age)
return true;
else
return false;
}

public int hashCode()
{
return name.hashCode() + age;
}
}



--------------------Configuration: j2sdk1.4.2_02 <Default>--------------------
E:\Java\MyKey.java:19: cannot resolve symbol
symbol  : variable name
location: class java.lang.Object
if(name.equals(obj.name) && age==obj.age)
                                  ^
E:\Java\MyKey.java:19: cannot resolve symbol
symbol  : variable age
location: class java.lang.Object
if(name.equals(obj.name) && age==obj.age)
                                                    ^
2 errors

不懂,obj不是形参嘛,怎么会报错的

地主 发表时间: 11/20 00:16

回复: wangdong11 [wangdong11]   论坛用户   登录
你没有注意到你的equals()方法有点问题!
object是个什么类呢!(java的类库)
在equals ()里面的参数应该是(MyKey obj),而不是(object obj)
改一下就好了


B1层 发表时间: 11/22 21:44

回复: kenter1643 [kenter1643]   论坛用户   登录
Oject不是集合类吗??怎么搞的!!!哈哈哈

B2层 发表时间: 11/25 15:20

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号