クラス ライブラリの一部であるクラスで、インターフェイスの「部分的な明示的な実装」を行いたいと考えています。部分的な明示的な実装とは、インターフェイスの一部のメンバーを暗黙的に実装し、同じインターフェイスの残りのメンバーを明示的に実装することを意味します。注意が必要な可能性のある懸念事項をお知らせください。
より具体的にIDriver
は、次のように定義されたインターフェースがあるとします。IDriver
インターフェイスは、すべてのドライバーの基本的な機能を定義します。
interface IDriver
{
IDriverIdentity DriverIdentity { get; }
IDriverOperation Operation { get; }
IDriverUtility Utility { get; }
}
public class MyDriver1 : IDriver
{
// Implement the first and second member of IDriver implicitly
public IDriverIdentity DriverIdentity
{
get
{
// return a IDriverIdentity object that user can use to assess Identity operations...
}
}
public IDriverOperation Operation
{
get
{
// return a IDriverOperation object that user can use to access DriverOperation related properties and members..
}
}
// Implement the last member of interface explicitly
IDriverUtility IDriver.Utility
{
get
{
// return a IDriverUtility object that user can use to access fundamental utility operations that is mandated for every "Driver" object...
}
}
public MyDriver1Utility Utility
{
get
{
// return MyDriver1Utility object that user can use to access utility operations available in this driver ...
}
}
}
同様に、暗黙的および明示的にandを実装する 、 などがあるMyDriver2
とします。MyDriver3
DriverIdentity
Operation
Utility
すべてのクラスで、ユーザーがさまざまなオブジェクトを使用しているときに一貫したビューを使用できるように、 暗黙的Driver
に実装したいと考えています。ただし、明示的に実装し、ドライバー オブジェクトからアクセスするときに、そのドライバーに固有の追加のユーティリティ操作を提供したいメンバーです。DriverIdentity
Operation
DriverIdentity
Operation
Driver
Utility
このシナリオでの部分的な明示的な実装の考えられる副作用/結果を理解しようとしています。コメントをお知らせください。
前もって感謝します!!