Это вызов статического универсального метода.Взгляните на эту статью . Generics разрешают универсальное программирование.
Например, это универсальный класс:
public class GenericClass<T>{}
, где универсальный тип T определяется во время компиляции при создании экземпляра класса.
GenericClass<String> class = new GenericClass<String>();
Вы можете заставить универсальный тип быть потомком определенного типа.Пример:
public class GenericClass<T extends JComponent>{}
Это полезно, чтобы разрешить универсальное программирование, потому что внутри метода вы можете угрожать универсальному типу, независимо от того, какой у него реальный тип. Например:
public class GenericClass<T extends JComponent>{
private T component;
public void showComponent(){
T.setVisible(true); //you can call this method. T could be a JComponent or a subclass of it
}
}
В вашемЕсли вы указываете универсальный тип при вызове статического метода, из-за его статической природы он может быть вызван без экземпляра.