我正在尝试在我的主类中创建一些嵌套类。
public class MyPlayer : Player
{
public bool TargetEnemy()
{
return true;
}
public class Movement
{
public uint aInt = 1;
public TurnLeft()
{
}
}
public class ActionBar
{
}
}
我有许多不同的类,因此我可以通过代码访问MyPlayer类而不将其传递给所有类我只是创建了一个保存变量的静态类。我可以使用Main.Units.MyPlayer.Movement访问MyPlayer-> Movement,但是这没有链接到我在静态类中定义的MyPlayer实例。
我希望能够以MyPlayer-> Movement-> TurnLeft()为例。我怎么做到这一点?谢谢你的回答。
答案 0 :(得分:2)
您可能会误将类嵌套的概念与类组合错误。要在Movement
课程中设置Player
个实例,您可以定义私有字段movement
和公共属性Movement
来访问它。
public class Player
{
public bool TargetEnemy()
{
return true;
}
private Movement movement = new Movement();
public Movement Movement
{
get { return movement; }
set { movement = value; }
}
}
public class Movement
{
public uint aInt = 1;
public TurnLeft()
{
}
}
public class ActionBar
{
}
然后,您可以创建Player
类的实例并访问其包含的Movement
:
Player myPlayer = new Player();
myPlayer.Movement.TurnLeft();
答案 1 :(得分:0)
然后MyPlayer
应该引用Movement
实例。
public class MyPlayer : Player
{
public static Movement movement = new Movement();
...
}