gpt4 book ai didi

c# - 如何在类和派生类之间使用接口(interface)?

转载 作者:行者123 更新时间:2023-11-30 13:36:57 26 4
gpt4 key购买 nike

我目前正在尝试制作国际象棋游戏并尝试实现一个界面,但我无法访问该界面。

public interface IChessPiece
{
bool CheckMove(int row, int col);
}

public class ChessPiece { ... }

public class Pawn : ChessPiece, IChessPiece
{
public bool CheckMove(int row, int col) { ... }
}

public class ChessPieces { public List<ChessPieces> chessPieces; ... }

我似乎无法访问 CheckMove() 方法。

board.chessPieces.Find(x => <condition>).CheckMove(row, col);

最佳答案

您可以将 ChessPiece 实现为抽象类:

public interface IChessPiece {
bool CheckMove(int row, int col);
}

// Note "abstract"
public abstract class ChessPiece: IChessPiece {
...

// Note "abstract"
public abstract bool CheckMove(int row, int col);
}

// Pawn implements IChessPiece since it's derived form ChessPiece
public class Pawn: ChessPiece {
// Actual implementation
public override bool CheckMove(int row, int col) { ... }
}

关于c# - 如何在类和派生类之间使用接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27916533/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com