1
0

fix issue 2

This commit is contained in:
2024-04-12 16:49:19 +03:00
parent 87c1df067a
commit 58fbf4e5e5
7 changed files with 50 additions and 12 deletions

View File

@@ -11,7 +11,17 @@ public class ElectricTool : Tool
/// <summary>
/// Мощность электроинструмента
/// </summary>
public uint Power => _power;
public uint Power
{
get => _power;
set
{
if (value == 0)
throw new ArgumentException("Мощность не может быть равна нулю", nameof(Power));
_power = value;
}
}
/// <summary>
/// Инициализирует новый экземпляр класса <see cref="ElectricTool"/> с указанным именем, материалом, весом и мощностью

View File

@@ -15,7 +15,17 @@ public class Lawnmower : ElectricTool
/// <summary>
/// Объем топлива
/// </summary>
public float FuelCapacity => _fuelCapacity;
public float FuelCapacity
{
get => _fuelCapacity;
set
{
if (value <= 0)
throw new ArgumentException("Объем топлива не может быть меньше или равен нулю", nameof(FuelCapacity));
_fuelCapacity = value;
}
}
/// <summary>
/// Текущий уровень топлива
/// </summary>

View File

@@ -11,7 +11,7 @@ public class ManualTool : Tool
/// <summary>
/// Длина рукояти ручного инструмента в метрах
/// </summary>
public float HandleLength => _handleLength;
public float HandleLength { get => _handleLength; set => SwitchHandle(value); }
/// <summary>
/// Инициализирует новый экземпляр класса <see cref="ManualTool"/> с указанным именем, материалом, весом и мощностью

View File

@@ -8,7 +8,17 @@ public class Scissors : ManualTool
/// <summary>
/// Размер лезвия ножниц.
/// </summary>
public double BladeSize => _bladeSize;
public double BladeSize
{
get => _bladeSize;
set
{
if (value <= 0.0)
throw new ArgumentException("Длина лезвия не может быть меньше или равна нулю", nameof(BladeSize));
_bladeSize = value;
}
}
/// <summary>
/// Инициализирует новый экземпляр класса <see cref="Scissors"/> с указанными параметрами.

View File

@@ -11,7 +11,7 @@ public class Scythe : ManualTool
/// <summary>
/// Тип лезвия
/// </summary>
public BladeType BladeType => _bladeType;
public BladeType BladeType { get => _bladeType; set => SwitchBlade(value); }
/// <summary>
/// Создает новый экземпляр класса <see cref="Scythe"/>

View File

@@ -28,7 +28,7 @@ public class Tool
/// <summary>
/// Название инструмента
/// </summary>
public string Name => _name;
public string Name { get => _name; set => _name = value; }
/// <summary>
/// Материал инструмента
/// </summary>
@@ -36,7 +36,17 @@ public class Tool
/// <summary>
/// Вес инструмента
/// </summary>
public double Weight => _weight;
public double Weight
{
get => _weight;
set
{
if (value <= 0)
throw new ArgumentException("Вес инструмента не может быть меньше или равен нулю", nameof(Weight));
_weight = value;
}
}
/// <summary>
/// Инициализирует новый экземпляр класса <see cref="Tool"/>.
@@ -48,9 +58,7 @@ public class Tool
public Tool(string parName, Material parMaterial, double parWeight)
{
if (parWeight <= 0)
{
throw new ArgumentException("Вес инструмента не может быть меньше или равен нулю", nameof(parWeight));
}
_name = parName;
_material = parMaterial;
@@ -60,8 +68,8 @@ public class Tool
/// <summary>
/// Печатает детали инструмента, включая его имя, материал и вес.
/// </summary>
public void Print()
public string Print()
{
Console.WriteLine($"Инструмент: {Name}, Материал: {Material}, Вес: {Weight}");
return $"Инструмент: {Name}, Материал: {Material}, Вес: {Weight}";
}
}

View File

@@ -11,7 +11,7 @@ public class Trimmer : ElectricTool
/// <summary>
/// Режим работы
/// </summary>
public TrimmerMode Mode => _mode;
public TrimmerMode Mode { get => _mode; set => ChangeMode(value); }
/// <summary>
/// Инициализирует новый экземпляр класса <see cref="Trimmer"/> с указанным именем, материалом, весом и мощностью