【发布时间】:2018-02-23 00:46:13
【问题描述】:
我是 C# 新手,一直在 .NET Academy 上做教程。我一直坚持这个练习,不知道该怎么做。以下是要求:
创建一个名为 Astrodroid 的抽象类,该类提供一个名为 GetSound 的虚拟方法,该方法返回一个字符串。默认声音应该是“哔哔”字样。
实现一个名为“MakeSound”的方法,该方法将 GetSound 方法的结果写入控制台,后跟一个新行。
创建一个名为 R2 的派生类,该类继承自 Astrodroid。
重写 R2 类的 GetSound 方法,使其返回“Beep bop”。
这是我目前所拥有的:
using System;
// Implement your classes here.
public abstract class Astrodroid
{
public virtual string GetSound { get { return "Beep beep"; } }
void MakeSound ()
{
Console.WriteLine(GetSound);
}
}
public class R2 : Astrodroid
{
public override string GetSound { get { return "Beep bop"; } }
void MakeSound ()
{
Console.WriteLine(GetSound);
}
}
public class Program
{
public static void Main()
{
}
}
现在我的问题是我不知道如何使“GetSound”成为一种方法而不会出现编译错误。你会怎么做呢?
【问题讨论】:
-
当您将 GetSound 更改为方法时,您是否将其更改为抽象类和具体类(Astrodroid 和 R1)中的方法?
标签: c# methods properties