Tomáš Pitner, Radek Ošlejšek, Marek Šabo, Jakub Čecháček pitner@muni.cz
V Javě máme následující příkazy:
Přiřazovací příkaz =
a jeho modifikace (kombinované operátory jako je +=
apod.)
Řízení toku programu (větvení, cykly) if
, switch
, for
, while
, do-while
Volání metody
Návrat z metody příkazem return
Příkaz je ukončen středníkem ;
Operátor přiřazení =
(assignment)
na levé straně musí být proměnná
na pravé straně výraz přiřaditelný (assignable) do této proměnné
Rozlišujeme přiřazení
primitivních hodnot a
odkazů na objekty
Na pravé straně je výraz vracející hodnotu primitivního typu:
číslo, logická hodnotu, znak
ale ne např. řetězec (to je objekt)
Na levé straně je proměnná téhož nebo širšího typu jako přiřazovaná hodnota:
např. int
lze přiřadit do long
Při zužujícím přiřazení se také provede konverze, ale může dojít ke ztrátě informace:
např. int
→ short
nebo i int
→ float
nebo i int
→ double
jsou zužující
Přiřazením primitivní hodnoty se hodnota zduplikuje ("opíše") do proměnné na levé straně.
Konstrukci =
lze použít i pro přiřazení do objektové proměnné, např. Person z1 = new Person()
Co to udělalo?
pravá strana vytvoří se nový objekt typu Person
( new Person()
)
přiřazení přiřadilo jej do proměnné z1
typu Person
Nyní můžeme odkaz na tentýž vytvořený objekt například znovu přiřadit do z2
: Person z2 = z1;
Proměnné z1
a z2
ukazují nyní na fyzicky stejný (identický) objekt typu osoba!!!
Proměnné objektového typu obsahují odkazy (reference) na objekty, tedy ne objekty samotné!!!
Metoda objektu je vlastně procedura/funkce, která realizuje svou činnost primárně s proměnnými objektu.
Volání metody určitého objektu realizujeme:
identifikaceObjektu.názevMetody(skutečné parametry)
, kde:
identifikaceObjektu
, jehož metodu voláme
.
(tečka)
názevMetody
, jíž nad daným objektem voláme
v závorách uvedeme skutečné parametry volání (záv. může být prázdná, nejsou-li parametry)
Návrat z metody se děje:
Buďto automaticky posledním příkazem v těle metody
nebo explicitně příkazem return
Oboje způsobí ukončení provádění těla metody a návrat,
přičemž u return
může být specifikována návratová hodnota
Typ skutečné návratové hodnoty musí korespondovat s deklarovaným typem návratové hodnoty.