鉴于这种情况:
class School
{
public void print(){}
}
class Grade extends School{}
class Student extends School{}
这有什么区别
public <E extends School> void someMethod(E someObj)
{
//now we can pass any object that extends school
//and we have access to any methods that are in school
someObj.print();
}
还有这个?
public void someMethod(School someObj)
{
someObj.print();
}
最佳答案
明显的区别是一个是通用的,另一个不是。
另一个知道的是泛型可以捕获参数的实际类型。当然,在这种情况下它没有任何区别。但是想象一下,如果您希望返回类型是参数的确切类型,那么它就会出现。
关于java - 泛型和继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23050833/