これを行う方法があるかどうかはわかりませんが、特定のインターフェイスを実装するクラスに対してのみ有効なクラスの注釈が必要です。
アノテーションの目的は、管理対象オブジェクトのセットにそのクラスのインスタンスを追加する必要があることをマネージャーが認識できるようにすることです。コンパイル時にその制限を追加する方法がない場合、実行時にこれを処理するための最良のパターンは何でしょうか?
背景: 現在、ユーザーが Strings[] に対して一連の事前定義されたアクションを実行できるようにするアプリケーションがあり、その結果、単一の文字列出力が得られます。アクションはシナリオごとにグループ化され、シナリオごとにそれらのアクションが定義された列挙型があります。そして、個々のメソッドを呼び出すためのこれらの列挙型のスイッチを持つ単一のクラス (すべてそのクラス内)。つまり、単一のアクションを追加すると、コード内のいくつかの領域が変更されます。初心者の開発者がアクションを正しいリストに追加し、自動的に使用できるようにするために、作成する必要がある単一のクラスに注意するだけで済みます。
私が決めた解決策は、開発者が実装する Action Interface を用意し、アノテーションを追加してその Action を目的のシナリオに登録し、単一のクラスの作成に対する新しい変更を分離することです。