[英]Can't read my class from file (Android)
我一直在搜索,找不到答案...我創建了一個類,並將該類的ArrayList成功保存到文件中,但是當我嘗試讀取此文件時,我一直在獲取:
E /讀取文件(14768):java.io.WriteAbortedException:讀取異常; java.io.NotSerializableException:il.co.hyperactive.callmaagansmallgate.Gate
這是我的課:
public class Gate implements Serializable {
/**
*
*/
private static final long serialVersionUID = 3L;
private double latitude;
private double longitude;
private String name;
private String phoneNumber;
public Gate(String name, double longitude, double latitude,
String phoneNumber) {
this.name = name;
this.longitude = longitude;
this.latitude = latitude;
this.phoneNumber = phoneNumber;
}
public Gate(String name) {
this.name = name;
}
public void setPlace(double latitude, double longitude) {
this.longitude = longitude;
this.latitude = latitude;
}
public String toString() {
return name + "\nLatitude:" + latitude + "\nLongitude:" + longitude
+ "\nNumber:" + phoneNumber;
}
public double getLatitude() {
return latitude;
}
public void setLatitude(double latitude) {
this.latitude = latitude;
}
public double getLongitude() {
return longitude;
}
public void setLongitude(double longitude) {
this.longitude = longitude;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
}
Serializable需要默認構造函數,沒有參數。 因此,請務必添加:
public Gate(){
}
這是必需的,因為只有在未指定編譯器的情況下,編譯器才會生成默認的構造器。 序列化總是調用默認構造函數,然后通過getter和setter填充對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.