Java 将泛型替换为实际类

Java 将泛型替换为实际类,java,Java,如果我有一个适合泛型的类,有没有一种方法来包装这种丑陋 那么这个 public HasOne aMethod(Class<? extends Model> clazz){ HasOne<Customer> hasOne = injector.getInstance(Key.get(new TypeLiteral<HasOne<Customer>>() { })); return hasOne; } public Has

如果我有一个适合泛型的类,有没有一种方法来包装这种丑陋

那么这个

public HasOne aMethod(Class<? extends Model> clazz){

    HasOne<Customer> hasOne = injector.getInstance(Key.get(new TypeLiteral<HasOne<Customer>>() {
    }));

    return hasOne;
}
public HasOne-method(类为什么不

public <T extends Model> HasOne<T> aMethod(Class<T> clazz){

    HasOne<T> hasOne = injector.getInstance(Key.get(new TypeLiteral<HasOne<T>>() {
    }));

    return hasOne;
}
public HasOne-method(类clazz){
HasOne HasOne=injector.getInstance(Key.get(new-TypeLiteral()){
}));
返回哈松;
}
为什么不呢

public <T extends Model> HasOne<T> aMethod(Class<T> clazz){

    HasOne<T> hasOne = injector.getInstance(Key.get(new TypeLiteral<HasOne<T>>() {
    }));

    return hasOne;
}
public HasOne-method(类clazz){
HasOne HasOne=injector.getInstance(Key.get(new-TypeLiteral()){
}));
返回哈松;
}
公共有一种方法(clazz类){
HasOne HasOne=injector.getInstance(Key.get(new-TypeLiteral()){
}));
返回哈松;
}
hasonecuster=aMethod(customer.class);
公共有一种方法(clazz类){
HasOne HasOne=injector.getInstance(Key.get(new-TypeLiteral()){
}));
返回哈松;
}
hasonecuster=aMethod(customer.class);

@MarlonBernardes是的…主要是想澄清一下:既然你编辑了你的文章,它确实可以编译(你从
…aMethod(Class)
改为
HasOne aMethod(Class clazz)
@MarlonBernardes是的…主要是想澄清一下:既然你编辑了你的文章,它就可以编译了(您从
…aMethod(Class)
更改为
HasOne aMethod(Class clazz)
public <T extends Model> HasOne<T> aMethod(Class<T> clazz){
    HasOne<T> hasOne = injector.getInstance(Key.get(new TypeLiteral<HasOne<T>>() {
    }));
    return hasOne;
}

HasOne<Customer> customer = aMethod(Customer.class);