0
我對下面描述的擴展泛型類的場景感到困惑。我擴展的類是下面:擴展一個泛類的原始類型警告
public abstract class PresenterWidget<V extends View> extends HandlerContainerImpl
...
起初,我有這個工作使用下面的子類(警告免費):
public abstract class SideBarPresenter<V extends SideBarPresenter.MyView> extends PresenterWidget<SideBarPresenter.MyView> {
interface MyView extends View {
void doSomething();
}
...
但我想MyView
轉換爲一個抽象類,所以我可以實施一種方法。我認爲這是有道理的方式如下。
public abstract class SideBarPresenter<V extends SideBarPresenter.MyView> extends PresenterWidget<SideBarPresenter.MyView> {
abstract class MyView implements View {
void doSomething() {}
}
...
問題是這樣產生2個警告,都指出:
SideBarPresenter.MyView是原始類型。引用泛型類型 應SideBarPresenter.MyView進行參數
我應該忽略此警告或是否有更好的方式來做到這一點?
從來沒有**,**,忽略任何警告。他們在那裏有一個很好的理由。對於原始類型,請參閱此問題:http://stackoverflow.com/questions/2770321/what-is-a-raw-type-and-why-shouldnt-we-use-it – Tunaki
@ 4castle查看是一個接口 –
@Tunaki感謝您的回覆,我實際上已經使用了很多原始類型,但是我正在爲這個特定的場景而苦苦掙扎。我同意,但從不忽視警告,這就是爲什麼我張貼這個問題:) –