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

VBA・Office

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

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

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

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

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

文書情報

記事タイトル
VBAでImplementsを使ったインターフェースを実装する(ポリモフィズムによる共通処理、キャストを使ったクラス毎の個別処理)サンプル
作成日
更新日
Source URL
https://papanda925.com/?p=2599

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

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