[英]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.