यह एक अजीब सवाल की तरह लग सकता है लेकिन एक सामान्य को परिभाषित करने के लिए कैसे एक कक्षा को विस्तारित करना और इंटरफेस को कार्यान्वित करना है? वर्तमान में निम्नलिखित प्रोटोटाइप के साथ एक सामान्य कार्य है:जेनेरिक विस्तार कक्षा और कार्यान्वयन इंटरफ़ेस
public static <E extends Enum<E>> List<E> buildEnumList(Class<E> enumClass)
यह केवल इरादे से काम करता है। मेरी समस्या यह है कि मैं उन योग्य वर्गों को उन लोगों तक सीमित करना चाहता हूं जो कि enums हैं और एक विशिष्ट इंटरफ़ेस Readable
लागू करें (java.lang में नहीं)। के बाद से एक सामान्य संकेत मिलता है कि यह एक अंतरफलक को लागू करना चाहिए एक ही कीवर्ड extends
का उपयोग करता है, मैं न निम्नलिखित छद्म व्यवहार प्राप्त करने के लिए किसी भी तरह से देखें:
public static <E extends Enum<E> implements Readable> List<E> buildLexicographicalEnumList(Class<E> enumClass)
एक कॉमा का उपयोग उन्हें अलग करने के लिए भी किया जा सकता है। – corsiKa
@corsiKa मैंने ऐसा भी सोचा लेकिन इसे [जेएलएस में] नहीं मिला [http://docs.oracle.com/javase/specs/jls/se7/html/jls-4.html#jls-4.4)। हालांकि यह संकलन करने के लिए करता है। – assylias
अब मुझे चिंतित है कि वे वास्तव में दो अलग-अलग चीजें करते हैं ... :-( – corsiKa