Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Każdaskładowaklasymożebyć:
prywatna–dostępnatylkowdanejklasie(specyfikatorprivate);
zaprzyjaźniona–dostępnazewszystkichklasdanegopakietu;mówisiętuteż
odostępiepakietowymlubdomyślnym–domyślnymdlatego,żetenrodzajdostęp-
nościwystępujewtedy,gdywdeklaracjiskładowejnieużyjemyżadnegospecyfikatora;
chronionalubzabezpieczona–dostępnazdanejklasy,wszystkichklasjądziedzi-
czącychorazzklasdanegopakietu(specyfikatorprotected);
publiczna–dostępnazewsząd(specyfikatorpublic).
Funkcjąprywatnościjestzapewnienie:
ochronyprzedzepsuciem(zazwyczajpolapowinnybyćprywatne;wyjątkiemsą
stałe)–użytkownikklasyniemadostępudoprywatnychpóliniczegonieświadomie
niepopsuje;
właściwegointerfejsu(metodyfirobocze”powinnybyćprywatne)–użytkownik
klasymadodyspozycjitylkoniezbędne(klarowne)metody,coułatwiamukorzysta-
niezklasy;
ochronyprzedkonsekwencjamizmianyimplementacji.
Twórcaklasymożezmienićzestawiimplementacjęprywatnychmetod,niezmieniając
interfejsupublicznego:wszystkieprogramynapisaneprzywykorzystaniutegointerfejsunie
będąwymagałyżadnychzmian.
MamyteżwJaviepojęciaklaspublicznychipakietowych.Klasapakietowajestdostęp-
natylkozklaspakietu.Klasapublicznajestdostępnazewsząd(zinnychpakietów).Klasę
publicznądeklarujemyzespecyfikatorempublic.OprócztegowJaviemamyspecjalny
rodzajklaszwanychwyliczeniami(enumeracjami).
1.2.Enumeracje
Enumeracja(wyliczenie)tonicinnegojakkonkretnyzbiórnazwanychstałych.Posługując
siętylkotypemint,możemynp.wprowadzićcośwrodzajuwyliczeniapórroku:
finalintZIMA=0,WIOSNA=1,LATO=2,JESIEN=3;
iużywaćichwprogramie:
intporaRoku=LATO;
Takiepodejściemajednakwady:
Brakkontrolipoprawnościdanych–nicniestoinaprzeszkodzie,abyzmiennej
poraRokunadaćnonsensownąwartość111.
Jeżelizmienimywyliczenie(np.dodamystałeidotychczasowewartościstałychsię
zmienią,np.dodamyPRZEDWIOSNIEzwartością1,awartościWIOSNA,LATO,
1.2.Enumeracje
17