黑马程序员技术交流社区
标题:
泛型问题
[打印本页]
作者:
盛亚昆
时间:
2012-3-20 13:52
标题:
泛型问题
public boolean equals(object obj)//这里能用泛型吗???
{
}
作者:
foxpeter
时间:
2012-3-20 13:56
如果是要重写Object类中的equals方法就不能用泛型 Object类中的equals方法就是用的Object作参数
作者:
丁佼
时间:
2012-3-20 14:10
可以使用泛型,比如public <T>boolean equals(T t){},在代码上是可以编译通过的,
但是这样写出来的equals方法只是你自己可以调用,和覆盖Object的equals方法在意义上是不同的,
这种写法的equals,在hashSet等类的默认情况下会被忽略掉,它们只会调用使用object作为参数的equals。
作者:
魏群
时间:
2012-3-20 14:22
使用泛型的话就是自己定义的方法了 就不是@Override了
建议重写父类的方法时在方法上加上注释
@Override
public boolean equals(Object obj){}
作者:
OMG
时间:
2012-3-20 14:59
哥们,泛型可以定义在类上,也可以定义在方法上,主要看需求:
1,对于equals方法的复写,通常出现在具体的自定义类(如Student类的子类JavaStudent)中,此时泛型为 equals(Studetn<JavaStudent> jst);
2,泛型的由来:当对象类型有多种,需要为某一种或某几种类型特制的集合或类时,如果对泛型进行了指定,那么在把对象加人集合或者传入方法时,编译器会进行验证,类型不符合条件时,编译器提前警告,把问题解决在运行之前,提高工作的效率;泛型的指定,也免去了类型的强转动作,减小了工作量;
3,泛型是JDK1.5的新特性,该新特性的价值在于,使代码简单化,提高工作的效率;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2