Android ID字段是否在ORMLite中继承?

Android ID字段是否在ORMLite中继承?,android,ormlite,Android,Ormlite,假设我有以下课程: public abstract class AHuman { @DatabaseField(id = true) protected String login; } 以下两个类对其进行了扩展: @DatabaseTable(daoClass = UserDAO.class) public class User extends AHuman { User() {} @ForeignCollectionField private

假设我有以下课程:

public abstract class AHuman
{
    @DatabaseField(id = true)
    protected String login;
}
以下两个类对其进行了扩展:

@DatabaseTable(daoClass = UserDAO.class)
public class User extends AHuman
{
     User() {}

     @ForeignCollectionField
     private ForeignCollection<Person> friends;
}


@DatabaseTable(daoClass = PersonDAO.class)
public class Person extends AHuman
{
    Person() {}
}
@DatabaseTable(daoClass=UserDAO.class)
公共类用户扩展了一个人
{
用户(){}
@国外收藏场
私人收藏外国朋友;
}
@数据库表(daoClass=PersonDAO.class)
公共阶层人士
{
Person(){}
}
当我在Android设备上编译并运行此程序时,会出现以下错误:

java.sql.SQLException: Could not call the constructor in class class 
      com.j256.ormlite.table.CustomDaoTest$A_DaoImpl
  at com.j256.ormlite.misc.SqlExceptionUtil.create(SqlExceptionUtil.java:22)
  ...
Caused by: java.lang.reflect.InvocationTargetException
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  ...
Caused by: java.lang.IllegalArgumentException: Foreign field class
>>>>      com.j256.ormlite.table.CustomDaoTest$B does not have id field  <<<<<<
  at com.j256.ormlite.field.FieldType.configDaoInformation(FieldType.java:332)
java.sql.SQLException:无法调用类中的构造函数
com.j256.ormlite.table.CustomDaoTest$A_DaoImpl
位于com.j256.ormlite.misc.SqlExceptionUtil.create(SqlExceptionUtil.java:22)
...
原因:java.lang.reflect.InvocationTargetException
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
...
原因:java.lang.IllegalArgumentException:外部字段类

>>>>com.j256.ormlite.table.CustomDaoTest$B没有id字段@id字段被继承。可能问题是您的构造函数不是公共的(使用默认说明符)