015 ポリモーフィズム(ダウンキャスト) 011 問題

問題

ポリモーフィズムにおいて、インスタンスの実際の型が不明な場合の注意点を考える問題。インスタンスが特定の型であるかどうかを確認してからダウンキャストし、NullPointerException を回避してみてください。

ヒント

  1. instanceof 演算子の使用:
    • ダウンキャストする前に、対象のオブジェクトが特定の型であるかどうかを確認するために instanceof 演算子を使用します。
    • instanceof 演算子は、対象のオブジェクトが指定された型のインスタンスである場合に true を返し、それ以外の場合には false を返します。
  2. 条件分岐での型確認:
    • instanceof 演算子の結果に基づいて条件分岐を行います。
    • もしオブジェクトが指定された型であれば、安全にダウンキャストを行います。
    • そうでない場合、ダウンキャストを行わずに処理をスキップするなど、適切な対応を行います。
  3. NullPointerException を回避:
    • ダウンキャストする前に、オブジェクトが null でないことも確認します。
    • null の場合にはダウンキャストを行わずに、例外を回避します。
  4. 例外処理の考慮:
    • ダウンキャストに失敗した場合に備えて、適切な例外処理を検討します。
    • 例外処理により、プログラムの実行が中断されることなく安全に処理を続行できます。

これらのポイントを考慮して、ポリモーフィズムにおいてインスタンスの実際の型が不明な場合の安全なダウンキャストを行うコードを構築してみてください。

解答例

「015 ポリモーフィズム」問題集リスト