是否可以将泛型类型扩展为Java中的多个类?

pro*_*mar 3 java generics

我试图用Java编写了使用通用参数,我想限制是完全有三种可能的阶级一方(无论是方法Field,MethodConstructor).

我试过以下标题:

private static <T extends Field,Method,Constructor> T[] sort(T[] anArray)
Run Code Online (Sandbox Code Playgroud)

但是这样它会忽略类型Method或类型的泛型参数Constructor.使用以下内容也会产生错误:

private static <T extends Field | Method | Constructor> T[] sort(T[] anArray)
Run Code Online (Sandbox Code Playgroud)

有可能做这样的事Java吗?

Cod*_*der 5

对于您的特定情况(如果您正在讨论反射特定类),您很幸运.

你可以使用这AccessibleObject门课.

private static <T extends AccessibleObject> T[] sort(T[] anArray)
Run Code Online (Sandbox Code Playgroud)

您可能还会Member根据您的要求对界面感兴趣.