OnJava8-Examples/reflection/toys/GenericToyTest.java

23 lines
732 B
Java
Raw Permalink Normal View History

// reflection/toys/GenericToyTest.java
// (c)2021 MindView LLC: see Copyright.txt
2015-11-15 15:51:35 -08:00
// We make no guarantees that this code is fit for any purpose.
2016-09-23 13:23:35 -06:00
// Visit http://OnJava8.com for more book information.
2016-01-25 18:05:55 -08:00
// Testing class Class
// {java reflection.toys.GenericToyTest}
package reflection.toys;
2015-06-15 17:47:35 -07:00
public class GenericToyTest {
2016-01-25 18:05:55 -08:00
public static void
main(String[] args) throws Exception {
Class<FancyToy> ftc = FancyToy.class;
2015-06-15 17:47:35 -07:00
// Produces exact type:
FancyToy fancyToy =
ftc.getConstructor().newInstance();
Class<? super FancyToy> up = ftc.getSuperclass();
2015-06-15 17:47:35 -07:00
// This won't compile:
// Class<Toy> up2 = ftc.getSuperclass();
2015-06-15 17:47:35 -07:00
// Only produces Object:
Object obj = up.getConstructor().newInstance();
2015-06-15 17:47:35 -07:00
}
2015-09-07 11:44:36 -06:00
}