短い答え:いいえ。
1 つの可能性として、インターフェースを更新するのではなく、インターフェースに拡張メソッドを追加する方法があります。次に例を示します。
public static class SomeUtilityClass
{
public static void DoTheAwesomez(this ISomeInterface obj, int count)
{
for(int i = 0 ; i < count ; i++)
{
obj.Foo();
obj.Bar();
}
}
}
あなたが持っている場合:
ISomeInterface x = ...
x.DoTheAwesomez(20);
しかし、通常のインターフェイス メソッドの場合: いいえ、それを自動的に追加する方法はありません。「ビルド」をクリックするだけで、コンパイラはどの型が不足しているかを教えてくれます。インターフェイスの実装を共通の基本クラスに追加すると、多くの場合、一度に複数の型をヒットすることが容易になります。
メソッドを削除する場合: これを行う 1 つの方法は、明示的なインターフェイスの実装を使用することです。
class Foo : ISomeInterface {
void ISomeInterface.SomeMethod(string x) {
....
}
}
SomeMethod
からメソッドを削除するISomeInterface
と、コンパイラはそれが使用されているすべての場所について通知します。
SomeMethod
すべてのメソッドを見つける他のローテクな方法には、次のものがあります。
- ctrlshiftf(グローバル検索) - ローテクですが、機能します...
- インターフェイスからメソッドを削除する直前に、リファクタリングを使用せずに名前を変更します
SomeMethod_xyz
(またはその他):これを実装するすべてのタイプは、実装していないと文句を言い、これを消費するSomeMethod_xyz
すべてのタイプは、そうではないと文句を言います。存在しないSomeMethod