是否有可能没有变量而有方法的类?

时间:2019-02-07 14:04:34

标签: c# class polymorphism

我正在用多态性解决这个问题。我需要用5种动物打印出这首歌的诗句。每只动物都重复这首诗,并使用适合该动物的声音,例如,母牛发出“ moo”声,鸭子产生“ quack”声等。可能只具有方法的类。另外这是我的代码。

public class Animal
{
    public virtual void PrintSong()
    {

    }
}

public class Cow : Animal
{
    public override void PrintSong()
    {
        Console.WriteLine("I go \"Mooo\" (I'm a cow, I'm a cow, I'm a cow)");        
    }
}

public class Pig : Animal
{
    public override void PrintSong()
    {
        Console.WriteLine("I go \"Oink\" (I'm a pig, I'm a pig, I'm a pig)");  
    }
}

static void Main(string[] args)
{
    Animal[] animals = new Animal[2];
    animals[0] = new Cow();
    animals[1] = new Pig();

    foreach (Animal a in animals)
    {
        a.PrintSong();
    }
}

1 个答案:

答案 0 :(得分:0)

一个类不必具有方法或字段/变量