Задачи на ООП в Dart. Часть 6
Дан следующий код:
class User {
String? name;
String? surn;
bool _notEmpty(String str) => str.isNotEmpty;
void setName(String name) { if (_notEmpty(name)) this.name = name; }
String? getName() => name;
}
class Employee extends User {
void setSurn(String surn) { if (_notEmpty(surn)) this.surn = surn; }
String? getSurn() => surn;
}
сделайте вспомогательный метод защищенным:.
Сделайте абстрактный класс Figure,
представляющий собой геометрическую
фигуру. Пусть от него наследует классы
для круга, прямоугольника и квадрата.
Добавьте в ваш класс User такой же
абстрактный метод increaseRevenue.
Напишите реализацию этого метода в классах
Employee и Student.
В классе Figure сделайте абстрактные
методы для получения площади и периметра фигуры.
Сделайте класс Num, у которого будут
два публичных статических свойства: num1
и num2. Запишите в первое свойство
число 2, а во второе - число 3.
Выведите сумму значений свойств на экран.
Сделайте класс Num, у которого будут
два приватны статических свойства: num1
и num2. Пусть по умолчанию в свойстве
num1 хранится число 2, а в
свойстве num2 - число 3.
Сделайте в классе Num метод getSum,
который будет выводить на экран сумму значений
свойств num1 и num2.
Дан следующий код:
class User {
String? name;
String? surn;
bool _notEmpty(String str) => str.isNotEmpty;
void setName(String name) { if (_notEmpty(name)) this.name = name; }
String? getName() => name;
}
class Employee extends User {
void setSurn(String surn) { if (_notEmpty(surn)) this.surn = surn; }
String? getSurn() => surn;
}
Переделайте методы следующего класса на статические.
Дан следующий код:
class ArraySumHelper {
int getSum1(List<int> arr) => _getSum(arr, 1);
int getSum2(List<int> arr) => _getSum(arr, 2);
int _getSum(List<int> arr, int power) {
return arr.fold(0, (sum, e) => sum + e);
}
};
Переделайте методы следующего класса на статические.
Сделайте наш счетчик приватным. Пусть его значение можно будет получать с помощью специального метода.