Modelowanie Systemów Informacyjnych (MSI) - pjwstk

Modelowanie Systemów Informacyjnych (MSI) - pjwstk Modelowanie Systemów Informacyjnych (MSI) - pjwstk

users.pjwstk.edu.pl
from users.pjwstk.edu.pl More from this publisher
13.07.2015 Views

Implementacja wielodziedziczenia z wykorzystanieminterfejsów (4)oCzęściowe rozwiązanie problemu wielokrotnej implementacjitych samych metod.Klasa PracującyStudentdziedziczy funkcjonalnośćpracownika i delegujefunkcjonalność studentado podłączonego obiektu.Innymi słowy: opakowujefunkcjonalność klasyStudent.getStypendium()getNumerIndeksu()«interface»IStudent+getStypendium()+getDochody()+getNumerIndeksu()1Student-Numer indeksu-Stypendium+getStypendium()+getDochody()+getNumerIndeksu()Osoba{abstract}-Imię-Nazwisko-Data urodzenia-/Wiek+getDochody()Pracownik-Badania lekarskie-Pensja+getPensja()+getDochody()Emeryt-Emerytura+getEmerytura()+getDochody()Pracujący student1+getStypendium()+getDochody()+getNumerIndeksu()Modelowanie Systemów Informacyjnych (MSI), wykład 10 38

Implementacja wielodziedziczenia z wykorzystanieminterfejsów (5)public class PracujacyStudent extends Pracownik implements IStudent {Student student;public PracujacyStudent(String imie, String nazwisko, Date dataUrodzenia, booleanbadaniaLekarskie, float pensja, int numerIndeksu, float stypendium) {super(imie, nazwisko, dataUrodzenia, badaniaLekarskie, pensja);student = new Student(imie, nazwisko, dataUrodzenia, numerIndeksu, stypendium);}public float getStypendium() {return student.getStypendium();}public void setStypendium(float stypendium) {student.setStypendium(stypendium);}public float getDochody() {return super.getDochody() + getStypendium();}public int getNumerIndeksu() {return student.getNumerIndeksu();}}oPewien niepokój może budzić pamiętanie niektórych atrybutów dwa razy(np. imię, nazwisko): raz w klasie PracujacyStudent, , a drugi raz wpodłączonym obiekcie klasy Student.Modyfikacja klasy Student,Przekazanie null’ido obiektu klasy Student.Modelowanie Systemów Informacyjnych (MSI), wykład 10 39

Implementacja wielodziedziczenia z wykorzystanieminterfejsów (4)oCzęściowe rozwiązanie problemu wielokrotnej implementacjitych samych metod.Klasa PracującyStudentdziedziczy funkcjonalnośćpracownika i delegujefunkcjonalność studentado podłączonego obiektu.Innymi słowy: opakowujefunkcjonalność klasyStudent.getStypendium()getNumerIndeksu()«interface»IStudent+getStypendium()+getDochody()+getNumerIndeksu()1Student-Numer indeksu-Stypendium+getStypendium()+getDochody()+getNumerIndeksu()Osoba{abstract}-Imię-Nazwisko-Data urodzenia-/Wiek+getDochody()Pracownik-Badania lekarskie-Pensja+getPensja()+getDochody()Emeryt-Emerytura+getEmerytura()+getDochody()Pracujący student1+getStypendium()+getDochody()+getNumerIndeksu()<strong>Modelowanie</strong> Systemów <strong>Informacyjnych</strong> (<strong>MSI</strong>), wykład 10 38

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!