[英]C# how to use the Parent class property in child class
我有以下具有父类 Shapes 属性的类,它具有属性 Radius 并且我正在将此属性访问到其子类(HeaxGon)中,但它在子类中出现错误(预期获取或设置访问器)
请指教。
class Shapes
{
int _radius;
public int Radius
{
get { return _radius; }
set { _radius = value; }
}
}
class HeaxGon:Shapes
{
int points;
public void SetRadius
{
**Radius=20;**
}
}
我猜你正在尝试创建一个名为SetRadius
的函数,在这种情况下,它应该是这样的:
public void SetRadius(int radius)
{
this.Radius = radius;
}
或者,如果您真的想在所有情况下将其设置为20
:
public void SetRadius()
{
this.Radius = 20;
}
你写的不好,它应该是这样的:
class Shapes
{
int _radius;
public int Radius
{
get { return _radius; }
set { _radius = value; }
}
}
class HeaxGon:Shapes
{
int points;
public void SetRadius()
{
Radius=20;
}
}
没有必要像其他人建议的那样称呼“这个”。
或者简单地使用您已经在基类中公开的属性
HeaxGon hg = new HeaxGon();
hg.Radius = 20;
这将调用您在基类 (Shapes) 中指定的 setter。
使_radius
受保护,然后在子类中简单地调用this.Radius
。 所以:
public class Shape
{
protected int _radius;
public int Radius
{
get { return _radius; }
set { _radius = value; }
}
}
public class Hexagon : Shape
{
int _points;
public void SetRadius(int radius)
{
this.Radius = radius;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.