从另一个类调用Main()

本文关键字:Main 调用 另一个 | 更新日期: 2023-09-27 18:02:47

我有一个名为TestMaze的类。我还有一个名为DisplayHome的类,它有一个名为gameOver()的方法:

public void gameOver()
    {
        Console.Write("GAME OVER!");
        Console.Write("Play Again? Y/N");
        if(char.ToLower(Convert.ToChar(Console.Read())=='y')
            //Main()
        else
            Environment.Exit(1);
    }

如何调用Main方法?
另外,它们有相同的命名空间。我只需要知道如何再次调用Main方法

从另一个类调用Main()

你应该有一个Play()方法在Main…和GameOver()应该调用Play()如果用户输入'y'。

重构你的代码。将需要调用的内容移动到另一个函数中,并从main和gameOver中调用它。

假设Main是一个静态类方法(我认为它是),您可以简单地使用MyClass.Main(/*relevant args*/) -当然要注意,它将是一个新的实例化,它不会共享任何非静态变量数据。

然而,一个可能更好的解决方案是将所有代码放入一个单独的类中,该类从Main()中调用/实例化-然后您的程序可以将一个布尔值传递回实际可执行的Main,该Main将用于决定是否退出或循环。