运行Demo类将调用在SomeClass的一个静态方法的newInstance到调用构造和打印你好(泛型)不能使静态参考非静态类型T
限定的方法将包括一个返回类型+带参数
为的newInstance返回类型为<方法名T> SomeClass的< T>似乎不可思议我 因为我的类被称为>的SomeClass的< t键< T> SomeClass的< T>
为什么我需要在SomeClass < T>前面的< T>? 看来,如果我不包括它会有所谓不能使静态参考非静态类型T
另一件事指出一个常见的错误 的是,我可以把之间有很多的空间< T>和SomeClass < T>因此它看起来不像他们需要在一起。
public class SomeClass<T> {
public static <T>SomeClass<T> newInstance(Class<T> clazz){
return new SomeClass<T>(clazz);
}
private SomeClass(Class<T> clazz){
System.out.println("hello");
}
}
public class Demo {
public static void main(String args[])
{
SomeClass<String> instance = SomeClass.newInstance(String.class);
}
}
根据带问号的唯一句子标记为重复。 –
http://stackoverflow.com/questions/12108118/what-do-the-angle-brackets-mean-in-this-interface-definition –