Bardzo proszę o pomoc. Uczę się Javy dopiero miesiąc i muszę zrobić 2 zadania za które nie wiem jak się zabrać. Proszę o podpowiedzi i wyjasnienie na czym polegaja metody których mam użyć
Zad. 3 Pracownicy I
Stworzyć klasę Employee (pracownik), opisującą wspólne atrrybuty danych o pracownikach:
- imię,
- nazwisko,
- wiek,
- pensja.
oraz zawierającą odpowiednie metody, które pozwolą uzyskać informacje o danym pracowniku oraz ustalić pensję i zmienić pensję o podany procent.
Użyć tej klasy w innej klasie, w której dostarczymy:
-
metody definiowania danych o pracownikach:
Employee defEmp(String msg),
która w dialogu wejściowym
pyta użytkownika o dane pracownika (argument msg jest komunikatem np. "Podaj dane o pracowniku"),
tworzy obiekt, reprezentujący wprowadzone dane o pracowniku,
i zwraca referencję do niego. -
metody showInfo(Employee), która wyświetla w dialogu komunikatów dane o podanym jako argument pracowniku
-
metody changeSalary(Employee), która pyta o procent o jaki chcemy zmienić pensję podanego jako argument pracownika i zmienia tę pensję.
Przetestować te metody na przykładzie wprowadzenia danych dla 3 pracowników, pokazania tych danych, zmiany pensji i pokazania zmienionych danych.
Do wprowadzabnia danych użyć dialogu i skanera.
Zad. 3. Lista pracowników
Stworzyć klasę Emps, której obiekty będą stanowić elementy listy pracowników.
Każdy obiekt klasy zawiera trzy elementy: referencję do obiektu klasu Employee, który jest reprezentowany przez dany obiekt (pracownik na liście), referencję do poprzedniego elementu listy (prev) , referencję do następnego elementu listy (next). Uwaga: elementy listy są obiektami klasy Emps, a nie Employee.
Lista może wygląda tak:
Zwróćmy uwagę, że w przypadku pierwszego elementu na liście wskazanie prev ma warość null (nie istnieje poprzedni element), a w przypadku ostatniego - wskazanie next ma wartość null (nie istnieje następny element).
Uwaga: nie jest to jedyny (ani najlepszy) sposób implementacji listy, ale być może najprostszy. Zachęcam do sięgnięcia do literatury dot. struktur danych.
W klasie Emps dostarczyć odpowiednich środków, potrzebnych do tworzenia elementów listy.
Definicja klasy Employee - z poprzednich ćwiczen.
W klasie testowej (powiedzmy EmpTest) zapewnić:
utworzenie listy pracowników na podstawie informacji podawanych w dialogach wejściowych; tworzenie listy kończy się, gdy zrezygnowano z wprowadzania danych dla kolejnego pracownika,
metody showForward() i showBackward() wypisujące dane o pracownikach w kolejności od pierwszego elementu do ostatniego i odwrotnie,
metodę changeAllSalaries - zmieniającą pensje wszystkich pracownikow na liście o podany jako argument procent.
Uwaga: będzie tu potrzebne zastosowanie instrukjci iteracyjen np. while. Proszę zerkmąć do wykłądu o iteracjach, albo skorzystać z pdopowiedzi do zadań domowych 2.
Pomoc - idiom programistyczny: wprowadzanie danychy w dialogach, dopóki nie wciśnięto Cancel:
String in;
while ((in = JOptionPane.showInputDialog("Podaj dane")) != null ) {
// działanie na wprowadzonych danych, dostępnych poprzez zmienną in
}