我有这段Java代码,我想在C#中实现,但我有两个主要问题:
这是 Java 代码:
static class Edges extends UpdatableRepository<Edge> {
Edges(final DataInputStream dis, final DataOutputStream dos, StringListQ idListQuery) {
super(new ObjectFactory<Edge>() {
public Edge newObject(String objectID) {
return new Edge(dis, dos, objectID);
}
}, idListQuery);
}
}
interface ObjectFactory<V> {
V newObject(String objectID);
}
编辑:我已经知道如何在C#中实现这一点,但我已经意识到这是不可能的:
static class Edges : UpdatableRepository<Edge>, ObjectFactory<Edge> {
public override Edge newObject(String objectID) {
return new Edge(dis, dos, objectID);
}
public Edges(BinaryReader dis, BinaryWriter dos, StringListQ idListQuery) {
base(this.newObject(String objectID, idListQuery);
}
}
有什么建议吗?
新编辑:
我一直收到有关此主题与C# vs JAVA instance of Interface重复的建议,并且没有人回答这个问题。但是,我仍然不知道如何继续,即使在阅读了该线程和其答案中指出的文档之后。出于这个原因,我想再次寻求帮助。