【发布时间】:2019-10-03 07:29:58
【问题描述】:
我正在学习使用 Android Studio,并且通常遵循在线教程来开发一个简单的应用程序,该应用程序使用 Room 等架构进行数据库访问和管理。我已经编写了 Entity 和 Dao 文件,但在数据库文件中,对 Dao 文件的引用给出了警告“此处不允许修改器‘抽象’”。我不确定这是否会随着项目的发展而自行“修复”,但本教程中没有提到类似的事情。
我已经尝试过删除和重新生成文件、重新同步并针对可比较的工作代码逐行交叉检查。 Google 搜索没有产生真正可比较的比较条件。
package org.ivanhoegc.ivanhoegolfscoringapp;
import android.content.Context;
import androidx.room.Database;
import androidx.room.Room;
import androidx.room.RoomDatabase;
@Database(entities = {Scoring.class}, version = 1)
public abstract class ScoringDatabase extends RoomDatabase {
private static ScoringDatabase instance;
public abstract ScoringDao scoringDao;
public static synchronized ScoringDatabase getInstance(Context context){
if(instance == null){
instance = Room.databaseBuilder(context.getApplicationContext(),
ScoringDatabase.class, "scoring_database")
.fallbackToDestructiveMigration()
.build();
}
return instance;
}
}
代码是整个数据库定义文件,有问题的代码行是'public abstract ScoringDao etc
【问题讨论】:
-
你不能有抽象字段。
标签: android database syntax-error dao abstract