मैं जानना चाहता हूं कि कक्षा किसी वर्ग और इंटरफ़ेस से प्राप्त हो सकती है या नहीं। नीचे दिया गया उदाहरण कोड काम नहीं करता है, लेकिन मुझे लगता है कि यह बताता है कि मैं क्या करना चाहता हूं। कारण यह है कि मैं ऐसा करना चाहता हूं क्योंकि मेरी कंपनी में हम यूएसबी, सीरियल, ईथरनेट, आदि डिवाइस बनाते हैं। मैं एक सामान्य घटक/इंटरफ़ेस विकसित करने की कोशिश कर रहा हूं जिसका उपयोग मैं अपने सभी उपकरणों के लिए प्रोग्राम लिखने के लिए कर सकता हूं जो हमारे सभी अनुप्रयोगों के लिए सामान्य चीजों (जैसे कनेक्टिंग, डिस्कनेक्टिंग, फर्मवेयर प्राप्त करना) को रखने में मदद करेंगे।सी # में, क्या कक्षा किसी अन्य वर्ग और इंटरफ़ेस से प्राप्त हो सकती है?
इस प्रश्न को जोड़ने के लिए: यदि जेनेरिकडिवाइस विभिन्न प्रोजेक्ट में है, तो क्या मैं उस प्रोजेक्ट में IOurDevices इंटरफ़ेस डाल सकता हूं, फिर यदि मैं पहली परियोजना का संदर्भ जोड़ता हूं तो USBDevice क्लास इंटरफ़ेस को कार्यान्वित कर सकता है? क्योंकि सिर्फ एक परियोजना का संदर्भ देना चाहते हैं और फिर डिवाइस के आधार पर विभिन्न इंटरफेस लागू करना चाहते हैं।
class GenericDevice
{
private string _connectionState;
public connectionState
{
get{return _connectionState; }
set{ _connectionState = value;}
}
}
interface IOurDevices
{
void connectToDevice();
void DisconnectDevice();
void GetFirmwareVersion();
}
class USBDevice : IOurDevices : GenericDevice
{
//here I would define the methods in the interface
//like this...
void connectToDevice()
{
connectionState = "connected";
}
}
//so that in my main program I can do this...
class myProgram
{
main()
{
USBDevice myUSB = new USBDevice();
myUSB.ConnectToDevice;
}
}
आपके भविष्य के संदर्भ के लिए, सी # विनिर्देश के खंड 10.1.4 में सटीक वर्णन किया गया है कि एक वर्ग को घोषित करने के लिए जिसमें कई आधार प्रकार हैं। –
@ एरिक लिपर्ट: क्या आप कृपया इस मामले के बारे में समझने में मेरी मदद कर सकते हैं कि यह सही तरीका है और भविष्य में उपलब्ध होगा? –