Делаю приложение для отслеживания сотрудников в фирме. Существуют разные классы сотрудников, которые все наследуют от абстрактного класса Employee. Я хочу определить статическую переменную в классе Employee, которая будет представлять идентификатор, который будет предоставлен каждому сотруднику после его инициализации, а затем будет увеличен. Так что мой вопрос заключается в том, как реализовать конструктор, например, для класса Manager который наследуется от Employee, не передавая ID в качестве параметра, но будет определен после достижения конструктора класса Employee?Наследование и конструкторы в C#
ответ
class Employee
{
static int _empCount = 0;
static int GetNextEmployeeId()
{
_empCount++;
return _empCount;
}
public int EmployeeId { get; private set; }
public Employee()
{
EmployeeId = GetNextEmployeeId();
}
}
Хорошо, это проще, чем я себе представлял, спасибо – user3791178
. Добро пожаловать на любой ответ, который вы найдете полезным ... – ShayD
имен Project1 {
class Employee
{
static int lastId;
protected int id;
public Employee()
{
this.id = lastId + 1;
lastId = this.id;
}
}
class Manager : Employee
{
public Manager() : base() { }
}
class Accountant : Employee
{
public Accountant() : base() { }
}
}
Вы должны исправить форматирование своего кода. Добавьте 4 пробела перед каждой строкой. Удалить пустые строки – rtruszk
- 1. Конструкторы и наследование C++
- 2. Наследование C++ (переопределяющие конструкторы)
- 3. Конструкторы и наследование
- 4. Наследование Конструкторы в C++ 0x
- 5. Наследование, объем и конструкторы шаблонов в C++
- 6. Переместить конструкторы и наследование
- 7. Наследование и конструкторы C# и overde
- 8. Конструкторы и наследование
- 9. Конструкторы и наследование?
- 10. Наследование классов и конструкторы
- 11. Прототипическое наследование и конструкторы
- 12. C++ Конструкторы, Константы, наследование и избежать повторения
- 13. Наследование Конструкторы
- 14. CoffeeScript, прототипное наследование и конструкторы
- 15. JavaScript наследование прототипов и конструкторы
- 16. виртуальное наследование - пропуск Конструкторы
- 17. Конструкторы и наследование по умолчанию в Java
- 18. Наследование Конструкторы работают только частично
- 19. Примеси, мульти-наследование, конструкторы и данные
- 20. Конструкторы Inhereting в C++
- 21. конструкторы и деструкторы - C++
- 22. C Конструкторы # и Contexes
- 23. Конструкторы SWIG и C++
- 24. C++ указатели и конструкторы
- 25. malloc и конструкторы в C++
- 26. Структуры в C# и конструкторы
- 27. Интерфейсы и конструкторы в C#
- 28. C#: наследующие конструкторы
- 29. Виртуальное наследование, конструкторы по умолчанию и дополнительное копирование
- 30. Наследование (C++)
Вы не можете иметь статическую переменную, которая является уникальным для каждого экземпляра класса. –
Я знаю, но я хочу передать значение из статической переменной в новую нестатическую переменную в классе, который наследуется от Employee – user3791178
Это домашнее задание, плохое понимание предмета и никакого примера кода, не ясно сведущим. –