Вот вопрос:
Я работаю над программой по распределению сотрудников в компании по разным отделам и назначаю sh разные роли для них в команде.
Таким образом, сотрудник может быть в нескольких командах. У каждой команды у них будут разные роли.
Итак, я создал интерфейс Role
и внедрил его в класс TeamHead
и TeamMember
Так что я могу однажды установить sh роль для сотрудника они добавлены в команду.
Однако, поскольку сотрудник может быть TeamHead
в Team1 и быть TeamMember
в Team2. Я не уверен, как отличить guish для получения разных результатов.
Так что я думал о создании внутреннего класса внутри Employee
класса.
public class Employee
{
private class TeamAndRole
{
Team t;
Role r;
public TeamAndRole(Team t, Role r)
{
this.t = t;
this.r = r;
}
}
private ArrayList<TeamAndRole> tar;
public Employee(){
this.tar = new ArrayList<>();
}
//..........
}
Так список массивов tar
будет хранить все команды и роли, которые принадлежат этому сотруднику для последующего использования.
Так это правильный подход? Если да, то как мне на самом деле правильно это реализовать?
Спасибо.