Упражнения за извънаудиторна заетост
Задача 1:
Да се създаде клас Работник (Employee) с атрибути:
· Име на фирмата в която работи (статичен)
· Брой работници (статичен) (инкрементира се при създаване на нов работник)
· Име (видим за наследник)
· Фамилия (видим за наследник)
· ЕГН (private)
· Град (видим за наследник)
· Заплата (private)
Класът трябва да дефинира следните методи:
· методи за достъп, в зависимост от спецификатора за достъп;
· конструктори;
· метод за текстово представяне на обекта;
· метод за изчисляване на заплата, който връща 0;
· статичен метод, който връща общия брой работници като приема като параметър масив от работници.
Задача 2:
Да се създаде клас Мениджър (Manager), който наследява клас Работник и има следните атрибути:
· Сектор (private)
Методи:
· методи за достъп, в зависимост от спецификатора за достъп;
· конструктори;
· метод за текстово представяне на обекта;
· метод „изчисляване на заплата“, който презаписва метода на родителския клас и връща стойността на атрибута заплата.
· метод „изчисляване на заработка“, който приема два параметъра – брой работни дни и заработка за един работен ден;
· метод „изчисляване на заработка“, който приема един параметър – заработка за един работен ден и връща произведение от заработката за един работен ден и 22 работни дни;
Задача 3:
Да се създаде клас Чиновник, наследяващ клас Работник и разширяващ го със следните атрибути:
· Допълнителен процент;
· Сектор(private);
Класът трябва да дефинира следните методи:
· методи за достъп, в зависимост от спецификатора за достъп;
· конструктори;
· метод за текстово представяне на обекта;
· метод „изчисляване на заплата“, който презаписва метода на родителския клас и връща стойността на атрибута заплата, увеличен с добавените допълнителни проценти към нея;
· метод за изчисляване на общ трудов стаж без параметър, който връща в години трудовия стаж (изчислени спрямо годината на раждане на чиновника, като се приеме, че е започнал работа на 23 години);
· метод за изчисляване на общ трудов стаж, предаващ параметър от тип String, който показва колко години не е работил чиновника (тези години трябва да се извадят от общия трудов стаж);
· метод за изчисляване на общ трудов стаж, предаващ параметър от тип double, който показва колко години не е работил чиновника (тези години трябва да се извадят от общия трудов стаж).
Задача 4:
Да се създаде клас, който съдържа main метод:
- Да се създадат 2 мениджъра и да се изведе текстовото представяне на обектите;
- Да се изчисли заплатата на мениджъра;
- Да се изчисли каква е заработката му при 18 работни дни и при пълен работен месец;
- Да се създадат 4 чиновника и да се изведе текстовото представяне на обектите;
- Да се изчисли заплатата на всеки един от чиновниците;
- Да се изведе трудовия стаж на всеки работник, като двама от тях имат пропуснати съответно 2 и 3 години (да се използват трите различни метода);
- Да се изведе колко работника има в цялата фирма;
- Да се изведе името на фирмата, в която работят всички работници.