Ich habe eine Basisklasse, die ListActivity erweitert, die ich verwenden möchte, um eine Menge gemeinsamen Code zu implementieren mehrere verschiedene AktivitätsimplementierungenAndroid-Aktivität mit abstrakter Basisklasse löst einen Kompilierungsfehler aus "ist nicht abstrakt und überschreibt keine abstrakte Methode ..."
Ich möchte diese Basisklasse abstrakt machen, um die Implementierung einer Methode für die Unterklassen zu erzwingen.
Wenn ich eine Basisimplementierung der Methode schreibe und sie in den Unterklassen überschreibe, funktioniert alles gut.
Wenn ich die Methode abstrakt machen, erhalte ich den folgenden Compiler-Fehler:
XXXX.subapps.athletics.AthleticsNewsActivity is not abstract and does not override abstract method getListItems() in XXXX.subapps.BaseCategoryListActivity
Basisklasse:
public abstract class BaseCategoryListActivity extends ListActivity
{
....
abstract ArrayList<String> getListItems();
....
}
Beispiel Unterklassen:
public class AthleticsNewsActivity extends BaseCategoryListActivity
{
....
public ArrayList<String> getListItems()
{
...implementation details....
}
}
Bitte verwenden Sie mindestens einige [grundlegende Formatierung] (http://stackoverflow.com/editing-help) – mark