複数のジェネリック インターフェイス セパレータ: "," または "&"
いつも使ってA<T extends I1, I2>
いたのですが、今日見ましたA<T extends I1 & I2>
。これら2つの表記の違いは何ですか?
違う意味ですか?目的?
複数のジェネリック インターフェイス セパレータ: "," または "&"
いつも使ってA<T extends I1, I2>
いたのですが、今日見ましたA<T extends I1 & I2>
。これら2つの表記の違いは何ですか?
違う意味ですか?目的?
A<T extends I1, I2>
A
2 つのパラメータを持つ型です
T
のサブタイプでなければなりませんI1
I2
これは、「I1 <前置詞> タイプ I2 を拡張する <前置詞> タイプ T」と読むことができるためSortedMap<Key extends comparable, Value>
、「比較可能なタイプ キーからタイプ値へのマップ」です。
A<T extends I1 & I2>
A
単一のパラメーターを持つ型です
T
I1
これは、のサブタイプおよびのサブタイプでなければなりませんI2
これを「I1 と I2 を拡張する <preposition> タイプ T」SortedSerializableSet<T extends Serializable & Comparable>
と読むことができるので、「シリアライズ可能で比較可能なタイプ T のソートされた要素のセット」と読むことができます。