I think you are confused by Polymorphism and Generics.
What you want:
Class x = new Integer();
is polymorphism. This statement will only be valid if Class is a base class of Integer, which is clearly not the case.
Parent x = new Child();
will work if 
class Child extends Parent {
    ....
}
The class you have written:
public class Class<T> {
    private ArrayList<Integer> x = new ArrayList<Integer>();
    ....
}
is a generic class but you do not use the type parameter. This is not a problem though, your class will still work. When you say:
Class x = new Class();
The type T will simply be Object. But since you do not use this type parameter, it does not have any effect.
To summarize, your statement of:
Class x = new Integer();
will never work as Integer does not have a "is a" relationship with Class. Generics is not used for this purpose.