# 泛型总结

# 类声明的泛型无法作用于静态方法

在类名后声明的泛型仅可用于该类的普通方法,不能作用于静态方法。示例代码如下所示:

public class GenericClass<T> {
    // 静态方法必须自己声明泛型
    public static <T> T staticMethod(T t) {
        return t;
    }

    // 普通方法可以使用类声明的泛型
    public T method(T t) {
        return t;
    }
}
1
2
3
4
5
6
7
8
9
10
11

这是由于类声明的泛型,必须在 new 创建对象时传入指定的类型,而类的静态方法直接使用 ClassName.staticMethod() 方式调用即可,并不需要实例化对象。

小结

  • 从 Java 8 开始,接口中也允许有 static 方法。
Last Updated: 4/25/2025, 8:53:41 AM