C#创建三个类:Preson类,Adult类和Baby类 (1) Person类中有属性:姓名、年龄;有方法:Eat(),该方法为虚方法(virtual),其功能为输出“我正在吃...”,方法Speak(),该方法输出相应的姓名和年龄; (2)Adult类、Baby类是Person类的派生类,在Adult类中重写Eat()方法,其功能为输出“我正在吃饭”,在Baby类中重写Eat()方法,其功能为输出“我正在喝奶”; (3)在主类的Main方法中创建Adult与Baby类的对象类测试这2个类的功能(使用Person类引用Adult对象,Baby对象,来分别调用Eat()、Speak()方法,再分别使用Adult对象,Baby对象调用Eat()和Speak()方法)。
时间: 2024-03-15 21:44:36 浏览: 21
以下是C#代码实现:
```csharp
using System;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public virtual void Eat()
{
Console.WriteLine("我正在吃...");
}
public void Speak()
{
Console.WriteLine($"我的名字是{Name},我今年{Age}岁了。");
}
}
public class Adult : Person
{
public override void Eat()
{
Console.WriteLine("我正在吃饭");
}
}
public class Baby : Person
{
public override void Eat()
{
Console.WriteLine("我正在喝奶");
}
}
public class Program
{
static void Main(string[] args)
{
Person adult = new Adult();
adult.Name = "张三";
adult.Age = 30;
adult.Eat();
adult.Speak();
Person baby = new Baby();
baby.Name = "李四";
baby.Age = 1;
baby.Eat();
baby.Speak();
Adult adult2 = new Adult();
adult2.Name = "王五";
adult2.Age = 40;
adult2.Eat();
adult2.Speak();
Baby baby2 = new Baby();
baby2.Name = "赵六";
baby2.Age = 0;
baby2.Eat();
baby2.Speak();
}
}
```
在上述代码中,Person类是基类,Adult类和Baby类是继承自Person类的派生类。其中,Person类中有虚方法Eat()和普通方法Speak(),而Adult类和Baby类分别重写了Eat()方法。在Main方法中,我们创建了Adult类和Baby类的对象,分别调用它们的Eat()和Speak()方法,以测试它们的功能。同时也演示了使用基类引用派生类对象的方法。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)