我正在尝试Android绑定库,我遇到了下面的错误-
“ReaderCollectionImpl”不实现继承的抽象成员“AbstractList.get(int)”
下面的函数是在我的类中生成的
public virtual unsafe global::Com.Digitalpersona.Uareu.IReader Get (int n)
{
}
public override unsafe global::Com.Digitalpersona.Uareu.IReader Get (int n)
{
}
public class ReaderCollectionImpl extends AbstractList<Reader> implements ReaderCollection
{
}
在用C#转换时,它变成了-
public partial class ReaderCollectionImpl : global::Java.Util.AbstractList
{
}
我的猜测是java.util.AbstractList
没有泛型,这可能是这里的问题?
在反编译dpuareu.jar并查看原始代码之后,我通过在metadata.xml中添加这些行,成功地编译了它。
<attr path="/api/package[@name='com.digitalpersona.uareu.dpfpdd']/class[@name='ReaderCollectionImpl']/ method[@name='get']" name="managedReturn">Java.Lang.Object</attr>
<attr path="/api/package[@name='com.digitalpersona.uareu.dpfpdd']/class[@name='ReaderCollectionImpl.ReaderImpl']" name="visibility">public</attr>
下一步是将所有的“So”添加到项目中,右键单击它们并选择“Build Action”到“EmbeddedReferenceJar”。
通过这些设置,我可以将DLL的引用添加到我的Xamarin.Android项目中,并无误地调用这一行。我甚至可以调用下面的GetName(),并获取连接的扫描仪的名称。这应作为进一步发展的起点。
ReaderCollectionImpl readerCollection;
public ReaderCollectionImpl GetReaders()
{
try
{
readerCollection = (ReaderCollectionImpl)UareUGlobal.GetReaderCollection(Android.App.Application.Context);
readerCollection.GetReaders();
return readerCollection;
}
catch(UareUException ex)
{
throw ex;
}
catch(Exception ex)
{
throw ex;
}
}
public int GetSize()
{
return readerCollection.Size();
}
public string GetName()
{
return (readerCollection.Get(0) as ReaderCollectionImpl.ReaderImpl).Description.Name;
}
使用反编译器,我检查了的内容,发现了以下内容: 为什么我甚至需要实现?生成的C#代码实现了,以匹配Java代码中的内容...我对Java了解不多,所以可能遗漏了什么...知道如何修复这个问题吗?
问题是: 我有一个叫做Schema的基类,它是抽象的,它是一个未生成的类。我有两个从Schema继承生成的JAXB类:FixedWidthSchema和DelimitedSchema。 我使用外部绑定(xjb)文件来指定XSD和Java类之间的映射。 在基类模式中,我定义了几个方法: 公共架构静态创建(Model m),它从提供的模型创建架构。 公共抽象Writer marshal(),它将当前架
我有2个抽象的类操纵泛型和一个工厂与泛型。父级独立于trips对象和因式分解代码。儿子只基于trips。 Eclipse上的AbstractTripBasedPurchaseExtractor第9行出现错误:Bound mismatch:类型TRIP_PURCHASE不是bounded参数的有效替代品 类型的 此处:extends AbstractPurchaseExtractor“ 在son类上
问题内容: 我有以下界面: 我在下面有抽象类(没有提到方法插入): 我有具体的课程: 最后,SpecificEntryBean定义为: 我有以下错误: 类型SpecificEntry必须实现继承的抽象方法SingleRecordInterface.insert(AbstractEntryBean) 考虑到SpecificEntryBean扩展了AbstractEntryBean,所以我不明白此错误
继承一个可以实现的普通超类有什么不同吗? atm我有一个名为的抽象类,我有/扩展这个。 abstractcar中的一个字段设置为"私有int容量" 但是在子类“小型汽车”中,当我输入“容量”作为构造函数中使用的变量时,它说“容量在抽象汽车中有私有访问” 我想: > 子类继承超类的所有字段和方法? 我现在该怎么进行?
我有一个抽象类,这个类是在她的子类中扩展的: < li >我在这个抽象类上实现了一个方法,并抽象了另一个方法 < li >实现的方法是每个子类对象都必须访问的通用方法。所以我决定在抽象类上实现它,避免在每个子类上实现相同的方法。 小例子: 我想听听你对这种实施方式的看法, 问候。