7
これは奇妙な質問のように聞こえるかもしれませんが、どのようにクラスを拡張し、インターフェイスを実装する必要があるジェネリックを定義できますか?現在、次のプロトタイプの汎用関数を持っています。汎用拡張クラスANDインターフェイスを実装します
public static <E extends Enum<E>> List<E> buildEnumList(Class<E> enumClass)
これは意図的に機能します。私の問題は、継承クラスを列挙型クラスにさらに制限し、特定のインターフェイスReadable
(java.langではなく)を実装したいということです。ジェネリックは、それがインターフェイスを実装する必要があることを示すために、同じキーワードextends
を使用しているので、私は、以下の疑似動作を取得する方法を参照してくださいいけない:
public static <E extends Enum<E> implements Readable> List<E> buildLexicographicalEnumList(Class<E> enumClass)
コンマを使用して区切ることもできます。 – corsiKa
@corsiKa私もそうだと思っていましたが、JLSで見つけられませんでした。それはコンパイルしますが。 – assylias
私は実際には2つの異なることを心配しています:-( – corsiKa