ART: Fix type parameter in tests
Move Class to Class<?>, Constructor to Constructor<?>, and in
general clean up reflection.
Test: m test-art-host-run-test
Change-Id: I3a4223ee8d14d032015edf34bf27135757f7138c
diff --git a/test/031-class-attributes/src/ClassAttrs.java b/test/031-class-attributes/src/ClassAttrs.java
index 38bd525..346e13d 100644
--- a/test/031-class-attributes/src/ClassAttrs.java
+++ b/test/031-class-attributes/src/ClassAttrs.java
@@ -118,14 +118,13 @@
printClassAttrs(FancyClass.class);
try {
- Constructor cons;
- cons = MemberClass.class.getConstructor(
- new Class[] { MemberClass.class });
+ Constructor<?> cons;
+ cons = MemberClass.class.getConstructor(MemberClass.class);
System.out.println("constructor signature: "
+ getSignatureAttribute(cons));
Method meth;
- meth = MemberClass.class.getMethod("foo", (Class[]) null);
+ meth = MemberClass.class.getMethod("foo");
System.out.println("method signature: "
+ getSignatureAttribute(meth));
@@ -222,7 +221,7 @@
public static String getSignatureAttribute(Object obj) {
Method method;
try {
- Class c = obj.getClass();
+ Class<?> c = obj.getClass();
if (c == Method.class || c == Constructor.class) {
c = AbstractMethod.class;
}
@@ -263,9 +262,7 @@
/*
* Dump a variety of class attributes.
*/
- public static void printClassAttrs(Class clazz) {
- Class clazz2;
-
+ public static <T> void printClassAttrs(Class<T> clazz) {
System.out.println("***** " + clazz + ":");
System.out.println(" name: "
@@ -321,7 +318,7 @@
System.out.println(" genericInterfaces: "
+ stringifyTypeArray(clazz.getGenericInterfaces()));
- TypeVariable<Class<?>>[] typeParameters = clazz.getTypeParameters();
+ TypeVariable<Class<T>>[] typeParameters = clazz.getTypeParameters();
System.out.println(" typeParameters: "
+ stringifyTypeArray(typeParameters));
}