簡體   English   中英

從序列化表格加載對象后,我應該投射對象嗎?

[英]Should I cast an object after loading it from serialized form?

我正在從序列化形式加載對象:

private void loadSerialisedIntersection() throws IOException{
 try{   
 FileInputStream f_in = new FileInputStream(getPath());

        obj_in = new ObjectInputStream (f_in);

        obj = obj_in.readObject();

        if(!(obj instanceof Intersection)) { 
        throw new IOException("Wrong class");
         }
  }
 catch (ClassNotFoundException e) {
       e.printStackTrace();
    }
 }

我想知道強制轉換為我期望的對象類型是個好主意嗎? 我看到了此建議,但我只能想象它會引起問題。 如果這是正確的做法,您能否解釋一下原因?

謝謝

您應該將其強制轉換為期望的類型,因為這是鍵入語言的重點。 您已經在檢查該對象是否是正確的實例類型。 當您完成ObjectInputStream時,將其關閉,並使obj_in和obj成為范圍變量而不是字段(我假設是這樣)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM