宠物类型列表,宠物有子类狗,猫等.我如何知道它是哪个子类

本文关键字:子类 何知道 类型 列表 猫等 | 更新日期: 2023-09-27 18:11:11

我有一个"petstore"控制台程序,它存储一个宠物类型的列表,宠物可以有狗,猫,兔子等类型的子类。如果我有一个打印动物信息的方法,我怎么知道它们是哪一种动物呢?

下面是打印动物信息的方法

public void ShowPets()
{
    Console.WriteLine("We have these animals: ");
    foreach (Pet p in pets)
    {
         Console.WriteLine(p.Breed + " who is a " + p.Age + " year old " + p.GetType());
    }
    Console.WriteLine();
}

是调用该方法时的输出。

terrier who is a 12 year old PetStore.Dog
persian who is a 2 year old PetStore.Cat

所以我想说只有12岁的狗或猫或羊驼

宠物类型列表,宠物有子类狗,猫等.我如何知道它是哪个子类

不要用p.GetType(),试试p.GetType().Name