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.
Klasa Main nienaruszalna
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args) {
Employee Janek = new Employee("Jan", "Janek", 30, 4000.0);
System.out.println(Janek);
System.out.println(Janek.getFirstName() + " " + Janek.getLastName());
System.out.println("Za rok bedzie mial: " + (Janek.getAge() + 1) + " lat.");
Janek.chgSalary(3.5);
System.out.println("I bedzie zarabial: " + Janek.getSalary() );
Employee e = EmpManager.defEmp("Podaj dane pracownika");
if (e == null) JOptionPane.showMessageDialog(null, "Nie podano danych");
else {
EmpManager.showInfo(e);
EmpManager.changeSalary(e);
EmpManager.showInfo(e);
}
}
}
.
Klasa emploee stworzona przeze mnie
public class Employee {
//pola klasy Employee to nimi bedziemy manipulować w programie
private String firstName;
private String lastName;
private int age;
private double salary;
public Employee()
{
}
public Employee( String fN, String lN, int a, double s )
{
this.firstName=fN;
this.lastName=lN;
this.age=a;
this.salary=s;
}
public String toString(){
return firstName+" " + lastName +" " + age + " " + salary ;
}
public String getFirstName()
{
return firstName;
}
public String getLastName()
{
return lastName;
}
public int getAge()
{
return age;
}
public double getSalary()
{
return salary;
}
public double setSalary()
{
return salary;
}
public void chgSalary(double percent)
{
double chg = salary * percent/100;
salary += chg;
}
}
.
do stworzenia mam klase
import java.util.*;
import static javax.swing.JOptionPane.*;
public class EmpManager {
.
-
metody definiowania danych o pracownikach:
Employee defEmp(String msg),
która w dialogu wejściowympyta 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 wprowadzania danych użyć dialogu i skanera.
od trzech dni kręcę się w miejscu
Wiem że już nic nie wiem !