【发布时间】:2015-01-09 00:47:05
【问题描述】:
我在将以下代码从 Java 转换为 C# 时遇到困难。
this.document.add(new VerticalPositionMark() {
@Override
public void draw(final PdfContentByte canvas, final float llx, final float lly, final float urx, final float ury, final float y)
{
final PdfTemplate createTemplate = canvas.createTemplate(50, 50);
Main.this.tocPlaceholder.put(title, createTemplate);
canvas.addTemplate(createTemplate, urx - 50, y);
}
});
我不确定是否可以覆盖 C# 中的实例化。如果没有,有没有办法复制代码来实现所需的功能?
【问题讨论】:
-
这是一个匿名类;为什么不创建一个命名类并使用它?
-
您不能在 c# 中匿名实现任何类,至少不是您想要的。你可以看看这个话题:stackoverflow.com/questions/24931211/…
-
那我是不是应该写一个继承自
VerticalPositionMark的新类对象,然后重写draw函数呢? -
@user3643344 不会覆盖该方法,因为没有具有另一个实现的基类。这将是一个新的实现,而不是一个覆盖。
标签: java c# overriding objectinstantiation