• Nie Znaleziono Wyników

Mapowanie dziedziczenia z UML do Java

N/A
N/A
Protected

Academic year: 2021

Share "Mapowanie dziedziczenia z UML do Java"

Copied!
22
0
0

Pełen tekst

(1)

Mapowanie

dziedziczenia z UML do Java

Piotr Kurek

Kuba Siatkowski

(2)

Poruszane problemy

Disjoint

Overlapping

Complete

Incomplete

Multi-Inheritance

Multi-Aspect

Dynamic

(3)

Disjoint a

overlapping

Różnica polega na rozłączności zbiorów

Overlapping

Zbiory nie są rozłączne

Disjoint

Przynależność do jednego zbioru

wyklucza przynależność do innego

(4)

Przykłady

Overlapping

Sportowiec

Biegacz Skoczek

S p o r t o w i e c

B ie g a cz

S ko cz ek

Kombinacja norweska

(5)

Przykłady

Disjoint

Czlowiek

Kobieta Mężczyzna

C z ł o w i e k

K o b i e t a M ę ż c z y z n a

(6)

Complete a incomplete

Różnica polega na kompletności odwzorowania obiektów klasy

nadrzędnej przez klasy podrzędne

Complete

Wszystkie obiekty są odwzorowane w klasach podrzędnych

Klasa nadrzędna jest abstrakcyjna

Incomplete

Nie wszystkie obiekty są odwzorowane w

klasach podrzędnych

(7)

Prawdziwe życie

Complete

Przesyłka

Dostarczona Niedostarczona

P r z e s y łk a

D o s t a r c z o n a N i e d o s t a r c z o n a

(8)

Prawdziwe życie

Incomplete

Disco

Discopolo Disko Italiano Bounce

D is k o Ita lia n o

D is c o p o lo B o u n c e

D is c o

(9)

Dziedziczenie

wieloaspektowe

Specjalizacja następuje po kilku aspektach

Rower

Górski Szosowy Aluminiowy Carbonowy

zastosowanie materiał

(10)

Dziedziczenie wielokrotne

Dziedziczenie z kilku klas jednocześnie

Jednoślad

Motor Rower

Motorower

Jako takie w Java

nie istnieje !!! ;-p

(11)

Dziedziczenie dynamiczne

Student może zmieniać stan, co może być modelowane przez

dziedziczenie dynamiczne

Student

Trzeźwy Pijany Skacowany

<<dynamic>>

(12)

Implementacje

(13)

Disjoint

Jest domyślnym sposobem dziedziczenia w Java

Czlowiek

Kobieta Mężczyzna

(14)

Overlapping

Wymaga wprowadzenia nowej klasy mającej atrybuty klas, które łączy.

Sportowiec

Biegacz Skoczek Kombinator norweski

Sportowiec

Biegacz Skoczek

{ overlapping }

(15)

Overlapping

class Sportowiec{

}

class Biegacz extends Sportowiec{

}

class Skoczek extends Sportowiec{

}

class KombinatorNorweski extends Sportowiec{

}

(16)

Complete

Klasa nadrzędna jest abstrakcyjna

abstract class Czlowiek{

}

class Kobieta extends Czlowiek{

}

class Mezczyzna extends Czlowiek{

}

(17)

Incomplete

Klasa generalizująca nie może być abstrakcyjna

class Drzewo{

}

class Jablon extends Drzewo{

}

class Grusza extends Drzewo{

}

(18)

Wielodziedziczen ie

Poprzez przekształcenie w dziedziczenia w kompozycje

Poprzez interfejsy

(19)

Wielodziedziczen ie poprzez

kompozycje

Jednoślad

Motor Rower

Motorower

Jednoślad

Motor Rower

1 0..1

0..1 1

class Jednoslad{

Motor motor;

Rower rower;

}

(20)

Wielodziedziczen ie przez intefejsy

interface Palny {

int LATWOPALNY = 2;

int PALNY = 1;

int NIEPALNY = 0;

void zapal (int palnosc);

}

class Material implements Palny{

public void zapal (int palnosc){

if (palnosc == LATWOPLANY ||

palnosc == PALNY)

System.out.println(„splonal”);

else

System.out.println(„przetrwal”);

(21)

Dziedziczenie

wieloaspektowe

(22)

Dziedziczenie dynamiczne

Trudne w implementacji

Jedną z metod jest kopiowanie obiektów pomiędzy klasami,

usuwanie obiektów źródłowych i zmiana (innej już) referencji

kopiowanie

Paleciak Widlak

Cytaty

Powiązane dokumenty

Interesujące jest także, jak sądzę, pytanie o me­ chanizm kształtowania się tego typu więzi i o warunki sprzyjające tworzeniu się poczucia przynależności do

In more collaborative approaches between these scholars and researchers from the natural sciences, the interaction between the two over the period of various months, allowed for

Wprowadzeniem do zajęć jest improwizacja ruchowa „Taniec wiatru” (dzieci są drzewami i poruszają się w rytm muzyki, naśladują podmuch wiatru, powtarzając dźwięk

Uprawnieni do ubiegania się o ulgę, są studenci, którzy zaliczyli pierwszy rok studiów oraz wywiązali się na dzień składania wniosku z płatności wobec Uniwersytetu w

Wątpić należy wszak, by kult pątniczy ogniskował się od początku wokół obrazu Matki Boskiej Byszewskiej, adorowanego publicznie w manierystycznym kościele z

Oznacza ono ze podklasy mogą nachodzic na siebie (Kowalski może być jednocześnie studentem i pracownikiem) Na diagramie projektowyn jest ono zaznaczane za pomoca slowa Overlapping

Z dobroci serca nie posłużę się dla zilustrowania tego mechanizmu rozwojem istoty ludzkiej, lecz zaproponuję przykład róży, która w pełnym rozkwicie osiąga stan

Odpowiedź na pytanie postawione w tytule może wskazywać na pewne grupy użytkowników języka, którym pozwala się być niepoprawnymi w do­. menie posługiwania