Hallo nimble,
Darauf, dass Du auf private deklarierte Eigenschaften in Kind-Klassen nicht zugreifen kannst, hat Cheatah dich ja schon hingewiesen. Außerdem hast Du die Eigenschaften ja auch noch neu deklariert.
Du solltest jetzt aber nicht "protected" statt "private" verwenden, sondern die abstrakte Klasse mit einem Konstruktor versehen, der die Eigenschaften aktualisiert:
public abstract class TableElement {
private String name, value;
private boolean hasCondition, sort, desc;
public TableElement(String name, String value, boolean sort,
boolean desc, boolean hasCondition) {
this.name = name;
this.value = value;
this.hasCondition = hasCondition;
this.sort = sort;
this.desc = desc;
}
public String getName() {
return this.name;
}
}
In einer Kindklasse musst Du dann den Konstruktor aufrufen, um die Werte zu übergeben:
public StringCell(String name) {
super(name, ...);
}
Grüße
Daniel