c#麻雀、鸵鸟、企鹅、鹦鹉、直升机、天鹅直升机和部分鸟能飞,鸵鸟和企鹅不能飞企鹅和天鹅能游泳除直升机,其它都能走请用面向对象相关知识实现,
时间: 2023-10-20 13:49:21 浏览: 34
可以创建一个基类 `Animal`,然后从该基类派生出各个动物类。每个动物类都有一个共同的方法 `Move()` 用于移动。
```csharp
public class Animal
{
public virtual void Move()
{
Console.WriteLine("走");
}
}
public class Sparrow : Animal
{
public override void Move()
{
Console.WriteLine("飞");
}
}
public class Ostrich : Animal
{
// 鸵鸟不能飞,使用基类的 Move 方法
}
public class Penguin : Animal
{
public override void Move()
{
Console.WriteLine("游泳");
}
}
public class Parrot : Animal
{
public override void Move()
{
Console.WriteLine("飞");
}
}
public class Helicopter
{
// 直升机不是动物,不继承自 Animal 类
}
public class SwanHelicopter : Animal
{
public override void Move()
{
Console.WriteLine("飞");
Console.WriteLine("游泳");
}
}
```
你可以使用这些类进行测试:
```csharp
Animal[] animals = new Animal[]
{
new Sparrow(),
new Ostrich(),
new Penguin(),
new Parrot(),
new Helicopter(),
new SwanHelicopter()
};
foreach (var animal in animals)
{
animal.Move();
}
```
输出结果为:
```
飞
走
游泳
飞
走
飞
游泳
```
注意,在这个例子中,我们使用了面向对象相关的知识实现了不同动物的移动方式,并且只有天鹅直升机同时能飞行和游泳。