Может ли объект Custom C # содержать свойство того же типа, что и он сам?

Если бы я создал следующееРаботник объект (упрощенный) ...

 public class Employee
    {
        public Employee()
        {       
        }

        public String StaffID { get; set; }
        public String Forename { get; set; }
        public String Surname { get; set; }
    }

... было бы приемлемо иметь другую собственность вРаботник объект с типом такжеРаботник хранить данные своего менеджера (как показано ниже)?

 public class Employee
    {
        public Employee()
        {       
        }

        public String StaffID { get; set; }
        public String Forename { get; set; }
        public String Surname { get; set; }

        public Employee Manager { get; set; }
    }

Кроме того, каков наилучший способ созданияРаботник объект дляМенеджер свойство? Очевидно, в том числеthis.Manager = new Employee(); в конструкторе вызовет бесконечный цикл. Был быМенеджер класс, который наследуется отРаботник быть лучшим способом (хотя все свойства будут идентичны)?

Ответы на вопрос(8)

Ваш ответ на вопрос