黑马程序员技术交流社区

标题: 类中只有一个方法需要使用泛型 [打印本页]

作者: 郑彬    时间: 2012-8-18 10:07
标题: 类中只有一个方法需要使用泛型
问题:类中只有一个方法需要使用泛型,是使用类级别的泛型,还是使用方法级别的泛型?
为什么?

作者: 张莹莹    时间: 2012-8-18 10:24
类中只有一个方法需要使用泛型,使用方法级别的泛型。
public <T> T[] Test(T[] a) {
       
}
如果只有一个方法需要使用泛型就在这一个方法上使用就好了,没必要再类上使用。
如果类中多个方法使用泛型,要使用类级别的泛型。
public class Test<T> {
       
}
如果多个方法要使用,且T是代表一个类型,那么必须使用类级别的泛型,如果有个方法使用的类型与其他方法不同那么还得在此方法上再使用方法级别的泛型。


作者: 左建飞    时间: 2012-8-18 10:37
泛型类定义的泛型,在整个类中有效。如果被方法使用,那么泛型类的对象明确要操作的具体类型后,所有要操作的类型就已经固定了。
为了让不同方法可以操作不同类型,而且类型还不确定。那么可以将泛型定义在方法上。
所以,要看你的方法使用的类型是固定的还是不固定的,固定的话使用类上定义的泛型更好,不固定只能使用方法上的泛型。
作者: 郑彬    时间: 2012-8-19 16:45
问题已经解决




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2