IBaseA <--- Interface
CBaseB <--- Concrete base class
ChildA implements IBaseA{
//fields and getters, setters
}
ChildB extends CBaseB, implements IBaseA{
//fields and getters, setters
}
TestClass implements RealmModel{
private IBaseA child_obj;
}
以这种方式制作 TestClass 的目的是能够将任何 ChildA 或 ChildB 对象分配给 TestClass.child_obj,并且仍然能够让 ChildA 和 ChildB 根据需要实现其他接口。
但是,这会导致编译时异常
Error:(12, 8) error: Type 'in.avanti_app.student_companion.realmClasses.TestClass' of field 'child_obj' is not supported
我们怎样才能达到上述目的呢?