为类成员分配功能

时间:2015-09-27 14:10:06

标签: c# function class

我有一个班级名称"游戏":

(对于某些背景,此类定义游戏启动器中的游戏。)

public class Game
{
    private string Name;
    public Game(string name)
    {
        Name = name;
    }

    public void Install()
    {
          //Insert For Each Member 
    }
}

我希望能够为每个班级成员单独分配函数Install()

Game game1 = new Game(1, "dfsdf");
game1.Install= {/*Insert Code Here*/};

有没有办法在c#中执行此操作?

(对不起,如果它被称为"方法"在c#中,我真的不知道)

这样做的目的是为每个游戏分配不同的安装程序。

1 个答案:

答案 0 :(得分:2)

您在此处尝试完成的工作并不完全清楚,但您可以做的是使Install成为Action类型的属性,然后指定一个匿名方法它。

例如:

public class Foo 
{
    public Action Install {get; set; }
}

var x = new Foo();
x.Install = () => { 
    // Whatever logic you'd like
};

更常见的方法是使用抽象方法创建抽象基类,然后实现为方法提供特定实现的特定子类型。