Je veux savoir si une classe peut hériter d'une classe et d'une interface. L'exemple de code ci-dessous ne fonctionne pas mais je pense qu'il exprime ce que je veux faire. La raison pour laquelle je veux faire cela est que dans mon entreprise, nous fabriquons des périphériques USB, série, Ethernet, etc. J'essaie de développer un composant / une interface générique que je peux utiliser pour écrire des programmes pour tous nos appareils qui aideront à garder les choses courantes (comme la connexion, la déconnexion, l'obtention du micrologiciel) les mêmes pour toutes nos applications.
Pour ajouter à cette question: Si GenericDevice est dans un projet différent, puis-je mettre l'interface IOurDevices dans ce projet, puis faire en sorte que la classe USBDevice implémente l'interface si j'ajoute une référence au premier projet? Parce que je voudrais simplement référencer un projet, puis implémenter différentes interfaces en fonction de l'appareil.
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;
}
}