У меня есть абстрактный класс с именем parcel.
public abstract class Parcel implements Serializable {
public String type;
public String comm;
//The type is different for different extensions of this class, but I can't put two different types?
public abstract void getData();
}
У меня есть два класса, которые расширяют этот класс, это первый класс ...
public class singleParcel extends Parcel {
private String info;
public singleParcel(String comm, String infoStr) {
this.info = infoStr;
super.type = "single";
super.comm = comm;
}
//This is ideally what I would like to do in this class
public String getData() {
return info;
}
}
Вот второй класс ..
public class BigParcel extends Parcel {
private ArrayList<Stuff> arrayOfStuff;
public BigParcel(String comm, ArrayList<Track> arrayL) {
this.arrayOfStuff = arrayL;
super.type = "big";
super.comm = comm;
}
//This is ideally what I would like to do in this one
public ArrayList<Stuff> getData() {
return arrayOfStuff;
}
}
Не уверен, возможно ли это вообще? Причина, по которой я хотел бы, чтобы моя посылка была абстрактным классом, заключается в том, что я работаю с подключением к серверу. Я хотел бы, чтобы был пакет, через который я мог бы отправить какую-то отдельную часть информации, и один, который я мог бы отправить ArrayList. То, что придет, будет посылкой любого типа.