我试图在类中使用构造函数来扩展DBFlow中的BaseModel,但是我在控制台中得到了它。
/home/christoandrew/Documents/Trumeter/app/build/generated/source/apt/debug/com/iconasystems/android/trumeter/models/Session_Table.java:144: error: constructor Session in class Session cannot be applied to given types;
return new Session(); ^
required: String,String
found: no arguments
reason: actual and formal argument lists differ in length
这是我的Session.java
@Table(database = TrumeterDatabase.class)
public class Session extends BaseModel{
@PrimaryKey
@Column
@SerializedName("username")
String username;
@Column
@SerializedName("password")
String password;
public Session(String username, String password) {
this.username = username;
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
现在,当我检查生成的表类时,它在实例化中没有参数。我一直在检查,所有教程似乎都没有在他们的课程中有构造函数。这是我的错误,或者它应该如何完成。
答案 0 :(得分:2)
您必须为模型类实现默认构造函数
public Session() {
}
因为DBflow处理器生成的代码(YourModel_Table)使用此默认构造函数。