Created
May 22, 2019 07:01
-
-
Save xuwei-k/a365b50a0527f114341c9b53b6b9367f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.Arrays; | |
public class A { | |
public class B { | |
public class C1 { | |
public C1(int a1) {} | |
} | |
public class C2 { | |
public C2(String a1) {} | |
} | |
public class C3 { | |
public C3(int[] a1) {} | |
} | |
public class C4 { | |
public C4(scala.Option<Integer> a1) {} | |
} | |
public class C5 { | |
public C5(scala.collection.immutable.List<Integer> a1) {} | |
} | |
public class C6 { | |
public C6(scala.Option<String> a1) {} | |
} | |
} | |
} | |
class Main { | |
static void f(Class<?> c) { | |
System.out.println(Arrays.toString(c.getConstructors()[0].getGenericParameterTypes())); | |
} | |
public static void main(String[] args) { | |
f(A.B.C1.class); // [class A$B, int] | |
f(A.B.C2.class); // [class A$B, class java.lang.String] | |
f(A.B.C3.class); // [class A$B, class [I] | |
f(A.B.C4.class); // [scala.Option<java.lang.Integer>] | |
f(A.B.C5.class); // [scala.collection.immutable.List<java.lang.Integer>] | |
f(A.B.C6.class); // [scala.Option<java.lang.String>] | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment