1

私は次のクラスを持っています:

  1. Streamableインターフェース
  2. DiaryEntry実装しますStreamable
  3. StatusEntry実装しますStreamable

そして、(私の考えでは) と の両方を含むべきである であるstreamフィールド。LinkedList<Ref<? extends Streamable>>Ref<DiaryEntry>Ref<StatusEntry>

残念ながら、次の行でコンパイル エラーが発生するため、私は間違っているようです。

ofy().load().refs(stream).values(); 

エラーは次のとおりです。

The method refs(Iterable<Ref<E>>) in the type Loader is not applicable for the arguments (LinkedList<Ref<? extends Streamable>>)

エンティティまたはフィールドを悪い方法でモデル化した可能性はありますか? refsメソッドは現在の署名ではなく、この署名を持つべきrefs(Iterable<Ref<? extends E>>)ですか?

ありがとう

4

2 に答える 2

0

たとえば、どのクラスが宣言Eされているか、その型パラメーターの境界は何かなど、全体像を把握するのに十分な情報を質問に提供していません。

しかし、推測を危険にさらすために、.refsを取るように再宣言してみてくださいIterable<? extends Ref<? extends E>>

于 2013-01-19T18:34:34.677 に答える