C# 继承c的问题#
我似乎在继承方面遇到了一些麻烦。我不确定到底出了什么问题,但我相信它调用的类是错误的。我对继承还是一个新手,所以我确信我在继承中有一些地方是错误的。它应该从每节课中调用一些内容,并在最后制作一个短语,但它似乎不起作用。它还应该覆盖以前的显示地址C# 继承c的问题#,c#,inheritance,C#,Inheritance,我似乎在继承方面遇到了一些麻烦。我不确定到底出了什么问题,但我相信它调用的类是错误的。我对继承还是一个新手,所以我确信我在继承中有一些地方是错误的。它应该从每节课中调用一些内容,并在最后制作一个短语,但它似乎不起作用。它还应该覆盖以前的显示地址 class DSC { private string schoolName { get; set; } string schoolName = "DSC"; public virtual string ShowAddress
class DSC
{
private string schoolName { get; set; }
string schoolName = "DSC";
public virtual string ShowAddress();
{ return " 1420 W. Highway Blvd., Orlando, Florida 33268 "}
}
class Campus
{
private string campusName { get; set; }
public string campusName
{
get
{
return campusName;
}
set
{
campusName = value;
}
public Campus(string cName);
public virtual string ShowAddress()
{ return "1843 Bob Blvd., Orlando, Florida 33268"; }
public string Departments()
{ return "Computer Scinece Department, Emergency Care Department, Police Academy"; }
}
class Program
{
static void Main(string[] args)
{
Campus atc = new Campus("Advanced Technology College");
Console.WriteLine(atc.ToString());
}
}
输出应该是什么
Daytona State College Advanced Technology College
is located at 1843 Bob Blvd., Orlando, Florida 33268,
it has Computer Scinece Department, Emergency Care Department, Police Academy
删除私有campusName的getter和setter,并将公共campusName重命名为campusName 在校园类中添加以下代码
public override string ToString()
{
return CampusName() + "\n is located at " + ShowAddress() + "\n it has " + Departments();
}
你应该写一个基础班
public class School
{
private string schoolName;
private string address;
public string SchoolName
{
get
{
return schoolName;
}
set
{
schoolName = value;
}
}
// same game with address
}
在那之后,你只需要继承
public Campus : School
{
// override or add methods
}
出了什么问题,你得到了什么样的输出?并不是说这涉及到继承。。但是在校园类中,您有两个名为
campusName
的属性。。我认为您正在尝试先创建字段,然后创建属性,而不是使用相同名称的两个独立属性。此外,您的类上没有ToString方法,因此您只会得到一条通用对象消息。。这段代码中没有继承,看起来代码甚至不会编译,更不用说生成预期的输出了。它告诉我“校园”不包含带1个参数的构造函数。您需要该构造函数->公共校园(字符串校园){schoolName=Campus;}添加该代码并移动一些其他代码修复了该问题。谢谢你的帮助。