[英]Set default value to member class in c#
我需要为成员类设置一个默认值,这个值可以变化,并在执行开始时设置; 到目前为止我有这个,minScore是我的默认值
public class Zones : GeneralIndicator
{
public int IndicatorType { get; set; }
public string Code { get; set; }
public string Score { get; set; } //TODO: calcular desde aca el score usando el indicatortype
public double Latitude { get; set; }
public double Longitude { get; set; }
private int minScore = 0;
public void setMinScore(int value)
{
minScore = value;
}
}
我在调用应用程序时将minScore值作为参数。 为运行时生成的每个对象设置minScore的最佳方法是什么?
两种选择:
创建一个ZonesFactory
类,它在构造函数中记住defaultMinScore
(要记住),并有一个CreateZones
方法,它创建一个实例并设置最小分数:
public class ZonesFactory { private readonly int defaultMinScore; public ZonesFactory(int defaultMinScore) { this.defaultMinScore = defaultMinScore; } public Zones CreateZones() { return new Zones(defaultMinScore); } }
请注意,这里我假设您还为Zones
创建了一个新的构造函数,它将minScore
作为参数。 我建议你摆脱setMinScore
方法(除了其他任何东西,它违反了.NET命名约定)。
使用静态变量保持默认值,并在Zones
构造函数中设置它
就个人而言,我更喜欢第一种。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.