循环依赖泛型 - 未经检查的强制转换?

时间:2015-12-25 19:19:05

标签: java generics

我试图通过使用通用方法来调制MVC模式。但是我得到一个未经检查的演员 这似乎引导我进入一个循环,我有Presenter(View(Presenter(View(...

有可能绕过这个吗?

public interface View <P extends Presenter>{

    P getPresenter();
}

public abstract class Presenter<V extends View> {

    public void bind(V view) {
    }
}

public abstract class ViewImpl<P extends Presenter> implements View<P> {

    public void onStart() {

        getPresenter().bind(this); // unchecked cast!
    }
}

1 个答案:

答案 0 :(得分:0)

尝试

public abstract class ViewImpl<P extends Presenter<View<P>>> implements View<P>