Why this is wrong:
Class extends Number> type = Integer.class; ArrayList = new ArrayList<>();
?
I
That's not how you use generics. You don't use a Class object, you use the class name directly in your code.
Class
ArrayList = new ArrayList<>();