クラスがクラスとインターフェースから継承できるかどうか知りたい。以下のサンプルコードは機能しませんが、私がやりたいことを伝えていると思います。私がこれをしたいのは、私たちの会社ではUSB、シリアル、イーサネットなどのデバイスを作っているからです。すべてのアプリケーションで共通のもの(接続、切断、ファームウェアの取得など)を同じに保つのに役立つ、すべてのデバイス用のプログラムを作成するために使用できる汎用コンポーネント/インターフェイスを開発しようとしています。
この質問に追加するには:GenericDeviceが別のプロジェクトにある場合、そのプロジェクトにIOurDevicesインターフェイスを配置してから、最初のプロジェクトへの参照を追加すると、USBDeviceクラスにインターフェイスを実装させることができますか?なぜなら、1つのプロジェクトを参照し、デバイスに応じて異なるインターフェイスを実装したいからです。
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;
}
}