: dom(k) x dom(t.i) x ... x dom(tn) —1L dom(t) (13.26)
Egzemplarz schematu zachowania SCHzac/, = (AC, IsA, 5) zawiera więc informacje o przynależności obiektów do klas oraz o implementacjach metod przypisanych klasom:
INST.,lCh = (mst, irnpl) (13.27)
Dyspozycja
Egzemplarz schematu zachowania zawiera przypisanie obiektów do klas, ponieważ jest to informacja niezbędna w chwili dyspozycji, tzn. przy wyborze odpowiedniej metody do wykonania. Dyspozycja nie jest czynnością banalną, mimo iż znacznie uproszczono ją w implementacjach popularnych języków programowana obiektowego. W językach takich jak Java i C-i -f dyspozycja jest, jednokrotna, tzn. wybór metody do wykonania odbywa się tylko na podstawie klasy obiektu, na rzecz którego wywołano metodę. Nie jest to kosztowne, a zarazem jest zupełnie wystarczające przy założeniach dotyczących kontra- wariancji/kowarianeji, które poczyniliśmy.
Dyspozycja wielokrotna (wybór metody do wykonania na podstawie typów wszystkich argumentów) jest znacznie bardziej złożona i kosztowna. Z tego powodu nie rozważa się jej w praktycznych językach programowania. Popatrzmy jednak na następujący przykład. W schemacie zachowania mamy dwie klasy: Pracownik i Kierownik (Kierownik IsA Pracownik) oraz dwie sygnatury metod:
spotkaj : Pracownik x Pracownik -» dat.e spotka) : Kierownik x Kierownik ~> date
Zwróćmy od razu uwagę na to, że ten schemat zachowania nie spełnia wymagania kontrawariancji argumentów przedefiniowariej metody. Drugi argument drugiej metody to typ referencyjny Kierownik, który jest właściwym podtypem typu referencyjnego Pracownik, a powinien być nadtypem.
Przypuśćmy, że zmienne pi,p-> przechowują referencje do pewnych obiektów klasy Pracownik, że zmienne k], ki przechowują referencje do pewnych obiektów klasy Kierownik.
Dyspozycja jednokrotna dobrze poradzi sobie z następującymi trzema wywołaniami i właściwie wybierze metodę do wykonania:
]t\.spotkaj (p-i) (13-28)
p |, spo tkaj (k-i) (13.29)
fci .spotkaj (k>) (13.30)
Dyspozycja jednokrotna źle wskaże za t.o metodę przy takim wywołaniu:
k,. spo tkaj (p2)