すべてのプロダクト
Search
ドキュメントセンター

Mobile Testing - Deprecated:java_lang_ArrayStoreException

最終更新日:Jan 17, 2025

問題の説明

この例外は、互換性のない型のオブジェクトを Object[] 配列に追加すると発生します。

解決策

この例外は、互換性のない型のオブジェクトを Object[] 配列に追加すると発生します。スタック情報に基づいてオブジェクトの型を変更することをお勧めします。

サンプルコード

class Father{}
class Son extends Father{}
... ...
public void handleArrayStoreException(){
      Father[] fathers=new Son[3];
      // 例外はここでスローされます。
      try {
        // 親クラスのオブジェクトは保存できず、子クラスのオブジェクトは保存できます。
      fathers[0]=new Father();
    } catch (ArrayStoreException e) {
      e.printStackTrace();
    }
      // 正しいコード
      Father father=new Father();
      Son son=new Son();
      if(son instanceof Son){
          // オブジェクトを配列に追加できます。
        fathers[1]=son;
      }
      if(father instanceof Son){
            // オブジェクトを配列に追加できません。
        fathers[2]=father;
      }
    }

参照