を正しい型を返します:Javaは - 私は、以下のクラス構造を持っている一般的な方法から
public class Team {
...
}
public class Event {
}
public abstract class Fixture<T extends Team> implements Event {
...
}
public abstract class Forecast<Event> {
}
public class MyPrediction<T extends Fixture<? extends Team>> extends Forecast<Fixture<? extends Team>>{
}
私はすべての種類のスポーツイベントをモデル化しようとしています(つまり、「フィクスチャ」は2人の参加者プレーの間に特定のゲームのためにあります「イベント」の別のタイプは多数の参加者を有する可能性がある)、特定の「イベント」の結果の予測と一緒になる。
public <T> MyPrediction<Fixture<? extends Team>> getMyPrediction(Fixture<? extends Team> fixture) {
}
私はfixture
引数の一般的な種類がありますが、私はそうすることができないようMyPrediction
インスタンスを返すことができるようにしたい:私は、一般的な方法があります。私は、次のような何かを行う場合たとえば、私はコンパイルエラーを取得:
SoccerFixture<EnglishSoccerTeams> soccerMatch = new ScoccerFixture<EnglishSoccerTeams>();
MyPrediction<SoccerFixture<EnglishSoccerTeams>> = getMyPrediction(soccerMatch);
私はこの機能を組み込むために私のクラスの構造を変更することが喜んで。どうすればいいですか?
「もし私が次のようなことをしたら...」(あなたはどんな問題に遭遇しますか?) –
イベントはインターフェースである必要があります –