8
मैं सिंगलटन वस्तुओं के साथ stackable trait pattern उपयोग करना चाहते हैं, लेकिन मैं कैसे संकलक खुश करने के लिए खोजने के लिए प्रतीत नहीं कर सकते हैं:स्टैक्टेबल विशेषता पैटर्न सिंगलटन ऑब्जेक्ट्स के साथ उपयोग किया जा सकता है?
abstract class Pr {
def pr()
}
trait PrePostPr extends Pr {
abstract override def pr() {
println("prepr")
super.pr()
println("postpr")
}
}
object Foo extends Pr with PrePostPr {
def pr() = println("Foo")
}
repl में यह मूल्यांकन करने के लिए कोशिश कर रहा है निम्न त्रुटि पैदा करता है:
<console>:10: error: overriding method pr in trait PrePostPr of type()Unit;
method pr needs `override' modifier
def pr() = println("Foo")
आह, स्पष्टीकरण के लिए धन्यवाद! – srparish
ऐसा लगता है कि एक ही नाम का उपयोग करना ठीक है, इसलिए मैं कक्षा "फू" नाम दे सकता हूं और उसके बाद ऑब्जेक्ट "फू" कक्षा "फू" का विस्तार कर सकता है। – srparish
हां, यह है - उस स्थिति में ऑब्जेक्ट 'फू' को कक्षा 'फू' के साथी वस्तु कहा जाता है। – axel22