Chcę wiedzieć, czy klasa może dziedziczyć po klasie i interfejsie. Poniższy przykładowy kod nie działa, ale myślę, że przekazuje to, co chcę zrobić. Powodem, dla którego chcę to zrobić, jest to, że w mojej firmie produkujemy urządzenia USB, szeregowe, Ethernet itp. Próbuję opracować ogólny komponent / interfejs, którego będę mógł używać do pisania programów dla wszystkich naszych urządzeń, które pomogą utrzymać te same typowe rzeczy (takie jak podłączanie, odłączanie, pobieranie oprogramowania układowego) dla wszystkich naszych aplikacji.
Aby dodać do tego pytania: Jeśli GenericDevice jest w innym projekcie, czy mogę umieścić interfejs IOurDevices w tym projekcie, a następnie sprawić, aby klasa USBDevice zaimplementowała interfejs, jeśli dodam odwołanie do pierwszego projektu? Ponieważ chciałbym odwołać się tylko do jednego projektu, a następnie zaimplementować różne interfejsy w zależności od tego, jakie jest urządzenie.
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;
}
}