Czy ktoś wie jak zrobic to zadanie? Ciągle wyskakuja mi błedy ;/
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:
1. 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.
2. metody showInfo(Employee), która wyświetla w dialogu komunikatów dane o podanym jako argument pracowniku
3. 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.
[Java] klasa opisująca wspólne atrybuty
-
- Użytkownik
- Posty: 108
- Rejestracja: 16 paź 2011, o 11:23
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 4 razy
[Java] klasa opisująca wspólne atrybuty
Kod: Zaznacz cały
package Employee;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class Employee {
private String imie;
private String nazwisko;
private int wiek;
private double pensja;
public String getImie(){
return imie;
}
public String getNazwisko(){
return nazwisko;
}
public int getWiek(){
return wiek;
}
public double getPensja(){
return pensja;
}
public double zmianaPensji(double zmianaPensji){
pensja = pensja + ((zmianaPensji / 100.0)*pensja);
return pensja;
}
public String toString(){
return imie + nazwisko + wiek + pensja;
}
public Employee (){
}
public Employee(String imie,String nazwisko,int wiek,double pensja){
this.imie = imie;
this.nazwisko = nazwisko;
this.wiek = wiek;
this.pensja = pensja;
}
public Employee defEmp(String msg){
Employee wynik = new Employee(){
};
JOptionPane.showMessageDialog(null,msg);
Scanner scan = new Scanner(System.in);
String im = JOptionPane.showInputDialog("Podaj imię pracownika");
wynik.imie = im;
if (im != null)im = "";
String na = JOptionPane.showInputDialog("Podaj nazwisko pracownika");
wynik.nazwisko = na;
if (na ==null) na ="";
String wi = JOptionPane.showInputDialog("Podaj wiek pracownika");
wynik.wiek = Integer.parseInt(wi);
if(wi==null)wi = "";
String pe = JOptionPane.showInputDialog("Podaj pensje pracownika");
wynik.pensja = Double.parseDouble(pe);
if(pe == null)pe = "";
return wynik;
}
public static void main(String[]argos){
Employee wynik = new Employee();
wynik.defEmp("podaj dane pracownika");
System.out.println(wynik);
}
}
Ostatnio zmieniony 12 lis 2011, o 22:01 przez Afish, łącznie zmieniany 1 raz.
Powód: Nie zapominaj o tagach code.
Powód: Nie zapominaj o tagach code.