Как параметризировать статический метод java
Вы можете параметризовать статический метод передавая ему в качестве аргумента обобщенный тип. Например, рассмотрим следующий пример статического метода, который суммирует два числа:
public class MathUtils {
public static int sum(int a, int b) {
return a + b;
}
}
Вы можете параметризовать этот метод, передав ему в качестве аргументов два объекта типа T
, где T
- это обобщенный тип, как показано в следующем примере:
public class MathUtils {
public static <T extends Number> double sum(T a, T b) {
return a.doubleValue() + b.doubleValue();
}
}
В этом примере мы использовали обобщенный тип <T extends Number>
для параметризации метода sum()
.
Здесь мы ограничиваем тип T
, чтобы он был типом Number
или его подклассом, и таким образом мы можем использовать метод doubleValue()
для преобразования значения объектов типа T
в тип double
Таким образом, мы можем вызвать параметризованный статический метод sum()
следующим образом:
int result = MathUtils.<Double>sum(3.5, 2.5); // 6.0
Здесь мы явно указываем, что тип T
является типом Double