運行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 –