Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Rys.1.1.PoczątkowyschematklasyVehicle
Zauważmy:dziękiabstrakcjiobiektowejwprogramowaniuposługujemysięjęzykiem
zbliżonymdojęzykaopisurzeczywistegoproblemu.
Opróczodzwierciedleniawprogramiefijęzykaproblemu”podejścieobiektowema
jeszczejednąważnązaletę:umożliwiazapewnienie,żeatrybutyobiektówniebędąbezpo-
średniodostępnepozaklasą.Wprogramiezobiektamifirozmawiamy”zapomocąwywo-
łanianaichrzeczmetod,obiektysamefiwiedząnajlepiej”,jakzmieniaćswojestany.Dzię-
kitemuniemożemyniczegonieopatrzniepopsuć,cowięcej–niemożemyzażądaćod
obiektuusługi,którejonnieudostępnia.
Dane(atrybuty)sąukryteitraktowanejakonierozdzielnacałośćzusługami.Nazywa
siętohermetyzacją(lubenkapsulacją)ioznaczaznacznezwiększenieodporności
programunabłędy.
Samakoncepcjaklasyjakozestawupólimetodjużzapewniaokreślonypoziomherme-
tyzacji.Niemożemynp.doobiektówklasyVehicleposłaćkomunikatusing(),ponieważ
metodasing()niewystępujejakoskładowawtejklasie.
Dodatkowojęzykiobiektowe(wtymJava)pozwalająukrywaćdane(imetody)przed
powszechnymdostępem.Dostępdoskładowychklasyregulujątzw.specyfikatorydostępu,
którychużywamywdeklaracjachzmiennych,stałychimetod.
16
1.Klasy