Possible Duplicate:
Create instance of generic type in Java?
I got these classes
public abstract class Base {
    public String Id = "originalId";
}
public class InstanceOfBase extends Base {
    public void setString(String test) {
        this.Id = test;
    }
}
public class UseIt {
    public Test<InstanceOfBase> test = new Test<InstanceOfBase>();
    public void run() {
        InstanceOfBase instanceOfBase = test.createMe();
        System.out.println(instanceOfBase.Id);
    }
}
public abstract class Test<E extends Base> {
    public E createMe() {
        // How do I do this?
        return new E();
    }
}
The code above does not compile because it does not know how to create E. how can I achieve this?
When I invoke the run method, I expect it should print "originalId".