Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
Implementacja asocjacji
Jarek Gadomski Kuba Morkis
2
Zagadnienia Asocjacja binarna Atrybuty i klasy asocjacji
Asocjacja kwalifikowana Asocjacja n-arna Agregacje i kompozycje
3
Asocjacja binarna (2-arna)
Asocjacja - związek obrazujący relację zachodzącą między dwoma lub więcej klasami. Asocjacja binarna – najprostsza i najczęściej spotykana forma asocjacji Firma Osoba pracuje_dla 1..* 1
4
Implementacja Implementacja asocjacji binarnych odbywa się poprzez wybranie jednej z dwóch klas i przechowywanie w niej referencji do drugiej klasy. Przykład: class Firma { String nazwa; Osoba[] pracownicy; } class Osoba { String imie; String nazwisko;
5
Atrybuty i klasy asocjacji
Stosuje się w celu pokazania dodatkowych atrybutów i właściwości asocjacji. Plik Użytkownik Uprawnienia dostęp dostępny dla * Pracownik nazwisko pesel adres Firma nazwa zarobek stanowisko zatrudnia 1 1..*
6
Implementacja W przypadku asocjacji wiele do wiele klasę asocjacji zamieniamy na zwykłą klasę. W innych przypadkach istnieje możliwość przeniesienia atrybutów asocjacji do klas podstawowych.
7
Implemencja class Pracownik { class Plik { } String nazwisko;
class Uzytkownik { class Uprawnienia { int dostep; Plik nazwaPliku; Uzytkownik uzyszkodnik; class Pracownik { String nazwisko; String pesel; String adres; String zarobek; String stanowisko; } class Firma { String nazwa;
8
Asocjacja kwalifikowana
Kwalifikator asocjacji jest atrybutem (lub zestawem atrybutów) klasy, który służy do wybrania podzbioru obiektów danej klasy. Uczelnia Student nr indeksu 1 1..* Uczelnia 1..* 1 Student nr indeksu kwalifikator asocjacji
9
Implementacja Asocjacje kwalifikowane implementujemy używając tablic asocjacyjnych (np. Hashtable). class Uczelnia { Hashtable studenci; public void dodajStudenta (String nrIndeksu, Student student) { studenci.put (nrIndeksu, student); } public void zlikwidujStudenta (String nrIndeksu) { studenci.remove(nrIndeksu); class Student { String nrIndeksu; String imie; String nazwisko;
10
Asocjacja n-arna Reprezentuje związek zachodzący pomiędzy n obiektami.
Student Sala Wykładowca Zajęcia * Przedmiot Data
11
Asocjacja n-arna cd.. Asocjacje n-arne przydatne są w przypadku obiektów powiązanych ze sobą licznościami wiele do wiele. Obejście asocjacji n-arnej poprzez dodanie klasy: Student Sala Wykładowca Zajęcia Data Przedmiot sprawdzObecnosc() 1 *
12
Implementacja Student Sala Wykładowca Zajęcia Przedmiot Data Student
* Przedmiot Data class Wykladowca { String imie; String nazwisko; String tytulNaukowy; } class Student { String nrIndeksu; class Sala { int numer; class Zajecia { Date data; String przedmiot; Wykladowca prowadzacy; Student[] studenci; Sala sala; Student Sala Wykładowca Zajęcia Data Przedmiot sprawdzObecnosc() 1 *
13
Agregacja i kompozycja
Agregacje oraz kompozycje służą do przedstawiania zależności typu część – całość. Sieć komputerowa Komputer * AGREGACJA Książka Strony * 1 KOMPOZYCJA
14
Implementacja Agregacje i kompozycje implementujemy za pomocą kolekcji referencji do obiektów składowych. class Komputer { InetAddress nrIP; } class Siec { String domena; Komputer[] spisKomputerow; Sieć Komputerowa domena Komputer nrIP *
15
Jarek Gadomski Kuba Morkis
KONIEC Jarek Gadomski Kuba Morkis
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.