कहता है, मेरे पास एक निष्पादन विधि के साथ एक सामान्य कमांड विशेषता है जो एक इनपुट लेता है और आउटपुट देता है।निम्नलिखित कोड प्रकार को सुरक्षित कैसे करें?
trait Input;
trait Output;
trait Command[I <: Input, O <: Output] {
def execute(input: I): O;
}
तब की तरह कुछ है, मैं विभिन्न कमांड, जैसे
class SampleInput extends Input
class SampleOutput extends Output
class SampleCommand extends Command[SampleInput, SampleOutput] {
def execute(input:SampleInput):SampleOutput = new SampleOutput()
}
इस के साथ समस्या यह कुछ बनाना मैं एक SampleAInput
और SampleBOutput
और संकलक कि खुशी से स्वीकार करेंगे के साथ एक कमांड बना सकते है जा रहा हूँ । मैं इसे कैसे लागू करूं ताकि संकलक टाइप मिस्चैच त्रुटि के साथ विफल हो जाए?
किसी तरह, मैं एक प्रकार के अंतर्गत समूह Input
और Output
करने की जरूरत है और उस प्रकार एक आदेश बनाने के लिए गुजरती हैं। मैं उसको कैसे करू?
उत्कृष्ट! यह वहीं है जिसे मैं ढूंढ रहा था। धन्यवाद IttayD। – sanjib