ORMlite admite la herencia, pero no es compatible con la herencia estratigios.
A continuación se muestra un ejemplo de herencia con ORMLite.
crear una superclase abstracta eso no es una tabla de base de datos ORMLite pero tiene algunos campos de base de datos utilizadas por todas las subclases
public abstract class Event {
@DatabaseField(columnName="id", generatedId = true)
protected int _id;
@DatabaseField(columnName="name")
protected String name;
@DatabaseField(columnName="date")
protected Date date;
@DatabaseField(columnName="type")
protected String type;
public abstract void setName(String name);
public abstract void setDate(Date date);
public abstract void setType(String type);
}
2) Crear una clase que hereda y añadir algunos campos (eso es una tabla base de datos)
@DatabaseTable(tableName="atividade")
public class Atividade extends Event {
@DatabaseField(columnName="ala")
protected String ala;
public String getAla() {
return ala;
}
public void setAla(String ala) {
this.ala = ala;
}
public Atividade(String name, Date date, String type, String ala) {
this.setName(name);
this.setDate(date);
this.setTipo(type);
this.setAla(ala);
}
Atividade(){
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public void setDate(Date date) {
this.date = date;
}
@Override
public void setType(String type) {
this.type = type;
}
}
Espero que ayude!
Lo siento, tal vez no era lo suficientemente claro sobre el enlace. Pensé que tal vez ahora es una solución implementada, porque la publicación es de enero de 2011, pero gracias por su respuesta – Flow
Np @Flow. Ese es otro voto para esa característica. Si desea ayudar a agregarlo a ORMLite, envíe algunos correos electrónicos en las listas de correo. – Gray
Perdón por traer esto de vuelta, pero ¿esto significa que si la Clase B extiende la Clase A, no puede tener dos tablas diferentes, donde la Clase B usa propiedades de Clase A como columnas de la tabla B? – Maxrunner