私はこれが簡単で可能だったc#から来ています。
私はこのコードを持っています:
public abstract class clsAbstractTable {
public abstract String TAG;
public abstract void init();
}
しかし、Eclipseは私が不正な修飾子を使用していると言っています。
私はこのクラスを持っています:
public class clsContactGroups extends clsAbstractTable {
}
Eclipseがプロンプトを表示するように変数とメソッドを定義したいのですが、実装されていない抽象変数とメソッドがあります。
抽象クラスを定義する必要があるので、抽象を実装するように求められますか?
編集1
データベーステーブルごとに異なるクラスを作成します。各クラスには、例外なく、独自のTABLENAME変数が必要です。抽象クラスを拡張する新しいクラスを作成するたびに、この変数が静的であることを確認する必要があります。
次に、抽象クラスにメソッドがあります。例:init();
このinit()メソッドでTABLENAMEを呼び出す場合、サブクラスから値を取得する必要があります。
このようなものもうまくいくはずです
String tablename=(clsAbstract)objItem.TABLENAME;
// where objItem can be any class that extended clsAbstract;
編集2
抽象的に定義された名前を持つ各クラスで定義された定数(静的)が必要です。
- 変数TABLENAMEを抽象で定義しましたが、値が指定されていません。
- clsContactGroupsを作成します。TABLENAMEを実装するように求められます。ここでデータを取得します。例:TABLENAME = "contactgroups";
- 2番目のクラスclsContactsを作成します。これにより、TABLENAMEを実装するように求められます。ここで、データを取得します。例:TABLENAME = "contacts";
等...