48 lines
1.8 KiB
C#
48 lines
1.8 KiB
C#
/// <summary>
|
||
/// Триммер
|
||
/// </summary>
|
||
public class Trimmer : ElectricTool
|
||
{
|
||
/// <summary>
|
||
/// Режим работы
|
||
/// </summary>
|
||
private TrimmerMode _mode;
|
||
|
||
/// <summary>
|
||
/// Режим работы
|
||
/// </summary>
|
||
public TrimmerMode Mode { get => _mode; set => ChangeMode(value); }
|
||
|
||
/// <summary>
|
||
/// Инициализирует новый экземпляр класса <see cref="Trimmer"/> с указанным именем, материалом, весом и мощностью
|
||
/// </summary>
|
||
/// <param name="parName">Имя электроинструмента</param>
|
||
/// <param name="parMaterial">Материал электроинструмента</param>
|
||
/// <param name="parWeight">Вес электроинструмента. Должен быть больше нуля</param>
|
||
/// <param name="parPower">Мощность электроинструмента. Должна быть больше нуля</param>
|
||
/// <exception cref="ArgumentException">Выбрасывается, когда вес меньше или равен нулю</exception>
|
||
/// <exception cref="ArgumentException">Выбрасывается, когда мощность равна нулю</exception>
|
||
public Trimmer(string parName, Material parMaterial, double parWeight, uint parPower) : base(parName, parMaterial, parWeight, parPower)
|
||
{
|
||
_mode = TrimmerMode.Normal;
|
||
}
|
||
|
||
/// <summary>
|
||
/// Изменяет режим работы обрезки
|
||
/// </summary>
|
||
/// <param name="parMode">Новый режим обрезки, который нужно установить</param>
|
||
public void ChangeMode(TrimmerMode parMode)
|
||
{
|
||
_mode = parMode;
|
||
}
|
||
|
||
public override object Clone()
|
||
{
|
||
var trimmer = new Trimmer(Name, Material, Weight, Power)
|
||
{
|
||
_mode = Mode
|
||
};
|
||
|
||
return trimmer;
|
||
}
|
||
} |