【发布时间】:2018-03-14 02:04:16
【问题描述】:
我一直在为 C# 初学者做一个班级作业。我已经到了不知道下一步该做什么的地步。这是问题,它涉及参数/参数...
定义“area”属性计算的输出,以便用户可以通过设置名为“radius”的参数/参数(在构造函数中)来初始化“Circle”类的实例,然后调用名为“ShowArea”的方法使用公式显示新圆实例的面积:(其中 r = 半径,A = 面积,π= pi)
这是我目前所拥有的:
namespace IndividualAssignment2
{
public class Shape
{
public virtual int area { get; set; }
}
public class Circle : Shape
{
double radius;
public override int area { get; set; }
double ShowArea = 3.14 * Math.Pow(radius,2);
}
public sealed class Square : Shape
{
int height;
}
}
如何在我的代码中实现这一点?我的双 ShowArea 不正确,因为半径带有下划线。我认为理解这个问题将有助于解决这个问题。谢谢。
【问题讨论】:
-
我猜 ShowArea 应该是这些类之外的方法,它接受 Shape 然后打印 area 属性,而不是 Circle 上的方法。 Arun 的答案是朝着正确方向迈出的一步,但我猜它应该将计算的区域保存到区域,除非您计划存储半径并在获取时动态计算它(然后您需要实现 set to 来反转计算并保存半径)
-
顺便说一句,您在这里得到半径下划线的原因是因为您在对象创建时初始化字段 ShowArea,而半径尚未设置。
标签: c# parameters arguments