VBAでImplementsを使ったインターフェースを実装する(ポリモフィズムによる共通処理、キャストを使ったクラス毎の個別処理)サンプル

Excel【VBA】

VBAでImplementsを使った実務処理は見たことがないが、将来、実用的に使えそうな(思いついた)サンプル例

 Implementsでインターフェースクラス(ここではICheckSheet)を実装したクラスは、インターフェースに関係するすべてのメンバー(プロシージャ(メソッド?)、プロパティ)を実装する必要がある(ここでは、ICheckSheet_xxxx )。さらに各クラス独自のメンバー(プロシージャ(メソッド?)も実装可能。

 インターフェースクラスを実装したクラスについては、定義は自分自身のクラスだが、インタフェースクラスでインスタンス化し、同一メソッド名だが、もクラスによって振る舞いを変えて実行することが可能(ポリモフィズム)。 

 更にインスタンス化後、自分自身にキャストすることで、各クラス独自のメンバー(プロシージャ(メソッド?)も実装可能。

ステートメント (VBA) を実装します | Microsoft Learn

コメント

タイトルとURLをコピーしました