public class Java8Test {
public static void main(String[] args) {
Class b = B.class;
Method[] methods = b.getMethods();
for (Method method : methods) {
Annotation resource = method.getAnnotation(Resource.class);
if (resource != null) {
System.out.println(method);
}
}
}
}
class A {
void print(T t) {
}
}
class B extends A {
@Resource
public void print(String s) {
}
}
在Java8中输出结果是:
public void com.test.java8.B.print(java.lang.String)
public void com.test.java8.B.print(java.lang.Object)
在Java6和Java7中输出结果是
public void com.test.java8.B.print(java.lang.String)
Java每次升级都不兼容,真是无语了。