46 lines
2.4 KiB
C#
46 lines
2.4 KiB
C#
/// <summary>
|
||
/// Ручной инструмент для косьбы
|
||
/// </summary>
|
||
public class ManualTool : Tool
|
||
{
|
||
/// <summary>
|
||
/// Длина рукояти ручного инструмента в метрах
|
||
/// </summary>
|
||
private float _handleLength;
|
||
|
||
/// <summary>
|
||
/// Длина рукояти ручного инструмента в метрах
|
||
/// </summary>
|
||
public float HandleLength => _handleLength;
|
||
|
||
/// <summary>
|
||
/// Инициализирует новый экземпляр класса <see cref="ManualTool"/> с указанным именем, материалом, весом и мощностью
|
||
/// </summary>
|
||
/// <param name="parName">Название ручного инструмента</param>
|
||
/// <param name="parMaterial">Материал ручного инструмента</param>
|
||
/// <param name="parWeight">Вес ручного инструмента в граммах</param>
|
||
/// <param name="parHandleLength">Длина рукояти ручного инструмента в метрах. Должна быть больше нуля</param>
|
||
/// <exception cref="ArgumentException">Выбрасывается, когда вес меньше или равен нулю</exception>
|
||
/// <exception cref="ArgumentException">Выбрасывается, когда длина рукояти меньше или равна нулю</exception>
|
||
public ManualTool(string parName, Material parMaterial, double parWeight, float parHandleLength) : base(parName, parMaterial, parWeight)
|
||
{
|
||
if (parHandleLength <= 0)
|
||
throw new ArgumentException("Длина рукояти не может быть меньше или равна нулю", nameof(parHandleLength));
|
||
|
||
_handleLength = parHandleLength;
|
||
}
|
||
|
||
/// <summary>
|
||
/// Заменяет рукоять на новую другой длины
|
||
/// </summary>
|
||
/// <param name="parNewHandleLength">Новая длина рукоятки. Должна быть больше нуля</param>
|
||
/// <exception cref="ArgumentException">Выбрасывается, когда новая длина рукоятки меньше или равна нулю</exception>
|
||
public void SwitchHandle(float parNewHandleLength)
|
||
{
|
||
if (parNewHandleLength <= 0)
|
||
throw new ArgumentException("Длина рукояти не может быть меньше или равна нулю", nameof(parNewHandleLength));
|
||
|
||
_handleLength = parNewHandleLength;
|
||
}
|
||
}
|