मैं स्थैतिक सामान्य विधियों को शामिल करते हुए एक जिज्ञासु स्थिति में आया हूं। यह कोड है:
class Foo<E>
{
public static <E> Foo<E> createFoo()
{
// ...
}
}
class Bar<E>
{
private Foo<E> member;
public Bar()
{
member = Foo.createFoo();
}
}
अभिव्यक्ति में किसी भी प्रकार के तर्क को कैसे निर्दिष्ट नहीं करना है Foo.createFoo()
? क्या यह किसी प्रकार का अनुमान है? यदि मैं इसके बारे में स्पष्ट होना चाहता हूं, तो मैं प्रकार तर्क कैसे निर्दिष्ट कर सकता हूं?
7
मैं आपको CreateFoo विधि के प्रकार पैरामीटर E को बदलने की सलाह दूंगा। क्योंकि, क्लास फू के प्रकार पैरामीटर E, विधि createFoo () के प्रकार पैरामीटर E से भिन्न है।
—
गुरसेल कोका
@GurselKoca वह स्पष्ट रूप से सदस्य = Foo कर सकता है। <E> createFoo (); उन्हें संकलन समय के समान होने की आवश्यकता है।
—
जॉर्ज जेवियर