मैं इस प्रकार एक सामान्य कारखाना बनाने के साथ खेल रहा था:उदाहरण उदाहरण के बिना एक सामान्य उदाहरण बनाने के लिए स्कैला में कोई तरीका है?
trait Factory[T] { def createInstance():T = new T() }
val dateFactory = new Factory[Date](){}
val myDate = dateFactory.createInstance()
'नई टी()' संकलन नहीं करता है, के रूप में टी क्रम तक अनिर्धारित रहता है। मुझे पता है कि मैं इसे कक्षा के उदाहरण में कुछ विधि (यानी बनानाInstance (classOf [date]) में गुजरकर काम करने के लिए प्राप्त कर सकता हूं)
मैं पूछ रहा हूं कि कुछ आत्मनिरीक्षण जादू है जो 'नया टी'() 'ताकि मैं अपना सुपर सरल कारखाना बना सकूं?
मैं इस उत्कृष्ट उत्तर को एक सुराग के रूप में लेने जा रहा हूं कि इसे एक विशेषता के साथ नहीं किया जा सकता है। –
क्षमा करें, मुझे यह इंगित करना चाहिए था। "लक्षणों में संदर्भ सीमाओं के साथ प्रकार पैरामीटर नहीं हो सकते हैं" (संकलक को छोड़ दें) –