Javaではインターフェース型の参照変数を宣言できます。
この変数は、インターフェイスを実装する任意のオブジェクトを参照できます。
インターフェイス参照を通じてオブジェクトのメソッドが呼び出される場合、オブジェクトによって実装されたメソッドのバージョンが実行されます。
この動作は、スーパークラス参照を使用してサブクラス オブジェクトにアクセスするのと似ています。
重要なポイント:
参照変数宣言:
変数 ob は Series ob; として宣言されており、ob は Series インターフェイスを実装する任意のオブジェクトを参照できることを意味します。これにより、コードの柔軟性とポリモーフィズムが可能になります。
参照ストレージ:
ループ内では、ob が twoOb (ByTwos のインスタンス) と threeOb (ByThrees のインスタンス) に交互に割り当てられます。これは、単一の参照変数を使用してインターフェイスのさまざまな実装を操作する方法を示しています。
アクセス制限:
ob は Series 参照であるため、それを介して Series インターフェイスで定義されたメソッドにのみアクセスできます。これは、インターフェイスのスコープを超えたメソッドや変数にはアクセスできないことを意味します。たとえば、Series インターフェイスで宣言されていないメソッドを呼び出そうとすると、コンパイラはエラーを生成します。
利点:
ポリモーフィズム: 同じインターフェイス参照 (ob) を使用して、参照を使用するコードを変更することなく、さまざまな実装 (ByTwos や ByThrees など) と対話できます。
柔軟性: インターフェイスを使用するコードに影響を与えることなく実装を変更できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3