Java/Klíčová slova: Porovnání verzí

Smazaný obsah Přidaný obsah
→‎for: oprava meze
m Robot: kosmetické úpravy
Řádek 1:
Java má jako [[:w:klíčové slovo|klíčová slova]] následující: [[#abstract|abstract]], [[#assert|assert]] (od Javy 1.4), [[#boolean|boolean]], [[#break|break]], [[#byte|byte]], [[#case|case]], [[#catch|catch]], [[#char|char]], [[#class|class]], [[#const|const]], [[#continue|continue]], [[#default|default]], [[#do|do]], [[#double|double]], [[#else|else]], [[#enum|enum]] (od Javy 5.0), [[#extends|extends]], [[#final|final]], [[#finally|finally]], [[#float|float]], [[#for|for]], [[#goto|goto]], [[#if|if]], [[#implements|implements]], [[#import|import]], [[#instanceof|instanceof]], [[#int|int]], [[#interface|interface]], [[#long|long]], [[#native|native]], [[#new|new]] , [[#package|package]], [[#private|private]], [[#protected|protected]], [[#public|public]], [[#return|return]], [[#short|short]], [[#static|static]], [[#strictfp|strictfp]] (od Javy 1.2), [[#super|super]], [[#switch|switch]], [[#synchronized|synchronized]], [[#this|this]], [[#throw|throw]], [[#throws|throws]], [[#transient|transient]], [[#try|try]], [[#void|void]], [[#volatile|volatile]] a [[#while|while]].
 
== abstract ==
Klíčové slovo abstract se používá u tříd a u metod.
* Použití u třídy značí, že daná třída nemůže být instancována (zdánlivá výjimka níže), jedná se o takzvanou ''abstraktní třídu'' (instancovatelná třída se nazývá ''konkrétní''). Z pochopitelného důvodů se nemůže jednat o třídu [[#final|finální]] – aby měla abstraktní třída smysl, musíme mít možnost odvodit od ní podtřídy. Klíčové slovo se u tříd píše obvykle za modifikátory přístupu a za případně použité klíčové slovo [[#static|static]].
* U metody je možné použít abstract pouze tehdy, je-li metodou abstraktní třídy. Abstraktní metoda se pouze deklaruje, neimplementuje se. Proto nemůže být [[#final|finální]], [[#static|statická]], [[#native|nativní]] ani [[#private|soukromá]]. Píše se před návratovou hodnotu metody.
U abstraktních tříd (a jejich metod) se nejčastěji použijí až podtřídy, abstraktní metody je ovšem možné implementovat i přímo při instancování – ve skutečnosti pak jde o ovšem o instancování nepojmenované jednorázové podtřídy.
 
{{Kód|jazyk=java|kód=
Řádek 27:
 
== assert ==
Klíčové slovo assert se používá pro [[:w:aserce|aserce]], což jsou tvrzení o stavu programu, která by měla být pravdivá z hlediska jeho vnitřní logiky a jejichž případné nekontrolování nebude mít vliv na správný běh odladěného programu. Nepoužívají se například na ověřování správného vstupu od uživatele. Jejich syntaxe je:
{{Kód|jazyk=java|kód=
assert výraz1 [: výraz2];
Řádek 92:
 
== class ==
Klíčové slovo ''class'' uvozuje deklaraci a definici [[../Třídy a objekty|třídy]].
 
Rozvitá Backusova-Naurova forma deklarace třídy vypadá následovně:
Řádek 146:
 
== else ==
Klíčové slovo ''else'' je volitelnou součástí podmíněného příkazu ''if''. Je jím uvozen blok příkazů, které se mají provést, pokud není podmínka splněna.
 
Příklad:
Řádek 183:
 
== final ==
Klíčové slovo ''final'' má různý významy podle toho, zde se užije u deklarace [[Java/Třída|třídy]], [[Java/Metody|metody]] a nebo [[Java/Proměnné|proměnné]].
 
=== Použití u třídy ===
U třídy použití klíčového slova ''final'' zakazuje odvozování potomků. Jedná se tedy o určitý protiklad klíčového slova [[#abstract]] a použití obou slov zároveň u stejné třídy je nemožné.
 
=== Použití u metod ===