вопрос в разработке класса в Java - PullRequest
0 голосов
/ 13 августа 2010

У меня есть класс Employee и класс отдела. Теперь внутри сотрудника у меня есть отдел в качестве члена. Отдел может быть двух типов: «HR» или «Admin».интерфейс, а затем следует моделировать класс отдела, как показано ниже?

public interface Myconstants{

  enum Depttype{HR,Admin};

}

public class Department{

 Myconstants.Depttype depttype;
 Department(Myconstants.Depttype depttype){
   this.deptype = deptype;
}

Ответы [ 4 ]

1 голос
/ 13 августа 2010

Я бы просто объявил перечисление в классе Департамента.

public class Department {

  public enum Depttype{HR,Admin};

  private Depttype depttype;

  Department(Depttype depttype) {
   this.deptype = deptype;
  }
}
0 голосов
/ 13 августа 2010

Мы объявляем перечисления отдельно, как простые перечисления в их собственном каталоге констант.Тип отдела может в будущем использоваться в другом месте приложения?А хранение всех констант / перечислений в одном месте облегчает разработчикам.

0 голосов
/ 13 августа 2010

Я не понимаю, почему перечисление должно быть частью интерфейса. Если «Тип отдела», как вы и предполагали, предполагается, что он является характеристикой ваших «Отделов», то, кажется, правильным способом объявить перечисление как атрибут класса Department.

0 голосов
/ 13 августа 2010

Как написано, почему бы просто не объявить перечисление?

Вы объявляете enum и затем оборачиваете его в классе, без какой-либо явной выгоды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...