В ниже приведенном коде метод checkForPresence()
должен в качестве параметра принимать группу, а не массив. Как это сделать?
public class Professor extends Group {
Professor(String groupCode, Students[] studentsList) {
super(groupCode, studentsList);
}
AbstractCheck auditForStudent;
public AbstractAudit checkForPresence() {
System.out.println("Проверка наличия студентов группы " + getGroupCode() + ":");
for (Students audit : getStudentsInGroup()) {
if (audit.isPresent())
auditForStudent = new Present();
else
auditForStudent = new Absent();
}
System.out.println(auditForStudent.checkForPresence());
return null;
}
}
Профессор (Professor
) не является группой (Group
), он только работает с ней. Следовательно, наследование здесь не нужно, но подойдет композиция.
Professor
принимает группу с которой будет работать (в реальности, это тоже должен быть список и он может быть изменен Professor
ом или Deparment
ом).
class Group {
private String id;
private Student[] list;
// getters & setters
}
У Group
есть id
и нам не нужно передавать его отдельно в конструктор Professor
а.
class Professor {
private Group group;
public Professor(Group group) {
this.group = group;
}
public AbstractAudit checkForPresence() {
System.out.println("Проверка наличия студентов группы " + group.getId() + ":");
for (Student student : group.getList()) {
...
}
return null;
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как можно массив байтов разделить на другие массивы между нулём, как это делает метод split со строками?
Во время сборки android-приложения появляется такая ошибка
Как сделать так, чтобы выполнялась проверка вводимых символов в строке? От "А" до "Я" и от "а" до "я"И если встречается символ, отличный от русского,...
Данная мне задача состоит в создании двух потоков, один из которых записывает значение в переменную, а другой после него считывает это значение...