我正在处理派生类,我已将派生类链接到父类,我在派生类中设置构造函数,但我得到的错误是"值不是存在于当前的背景下#34;当它们已在父类中声明时。造成这种情况的原因是什么,以及如何解决?
父类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HousingNameSpace
{
public abstract class Housing
{
private int sqFt;
private int zip;
private int yrBlt;
public Housing(int TSqFt, int Tzip, int TyrBlt)
{
sqFt = TSqFt;
zip = Tzip;
yrBlt = TyrBlt;
}
public int SqFt
{
get { return sqFt; }
set { sqFt = value; }
}
public int ZIP
{
get { return zip; }
set { zip = value; }
}
public int YrBlt
{
get{ return yrBlt; }
set { yrBlt = value; }
}
public abstract double GetRentAmmount();
}
}
派生类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using HousingNameSpace;
namespace MultiTennant
{
public class Multi:Housing
{
private string buildingtype;
private int occupants;
public string BuildingType
{
get{ return buildingtype; }
set { buildingtype = value; }
}
public int Occupants
{
get { return occupants; }
set { occupants = value; }
}
public Multi (string TbuildType) : base (TSqrFt, Tzip,TyrBlt)
{ }
}
}
答案 0 :(得分:2)
您需要在子类中使用基础构造函数参数'构造
input {
box-shadow: inset 0 0 10px rgba(0,0,0,0.8);
}
样式注释:更清晰地命名变量。 public Multi (string TbuildType, int TSqrFt, int Tzip, int TyrBlt)
: base (TSqrFt, Tzip,TyrBlt)
,squareFootage
等等......您以后会感谢自己。
哦,我知道这与问题根本无关(对不起),但如果我可以提出另一个建议:
yearBuilt
然后每种住房类型一个。你可能只想让MaximumOccupants获得。不希望有人改变你的最大入住率。