java 和 xna(c#) 中继承语法之间的差异
本文关键字:之间 语法 继承 xna java | 更新日期: 2023-09-27 18:33:07
目前我正在翻译我用java制作的一个项目,有一个关于使用超类/子类的快速问题。 基本上,在java项目中,我在构造函数中有这个:
public ShipSub(MainGame game, String reference, int x, int y)
{
super(reference,x,y);
this.game=game;
}
我遇到问题的部分是超级(参考,x,y)- 在 xna 中执行此操作的正确方法是什么?我知道使用 base 而不是 super,但我尝试使用 base 的方式与我在 java 代码中使用 super 的方式相同,但它不起作用。超级类的参数是相同的(这个项目已经在 java 中完成,所以一切都按照我想要的方式工作)我正在使用 xna gamepoint 4.0,如果这有什么不同的话。
谢谢。
public class ShipSub : SomeBaseClass
{
private MainGame game;
public ShipSub(MainGame game, String reference, int x, int y)
: base(game, reference, x, y)
{
this.game = game;
}
}
试试这个:
public ShipSub(MainGame game, String reference, int x, int y) : base(reference,x,y)
{
this.game=game;
}
假设基类具有带有 (String reference, int x, int y)
的构造函数。
Java
中的super()
只是对父类的调用。 这方面的一个编程示例是:
public class ShipSub : BaseClass // Base class would be what you call `super()` on
{
private MainGame game;
public ShipSub(MainGame mainGame, String reference, int x, int y)
: base(reference, x, y)
{
this.mainGame = game;
}
}
需要注意的是,对base/super
的调用也可以在没有参数的情况下进行,但在您的情况下,您需要添加它们。