Java: Abstraktní třídy, dědičnost a rozhraní
Z MiS
(Rozdíly mezi verzemi)
m (Doplněn odkaz na OOP) |
(→Dědičnost: Doplnění textu, přidán příklad.) |
||
Řádka 4: | Řádka 4: | ||
*Klíčové slovo <code>extends</code>. | *Klíčové slovo <code>extends</code>. | ||
*Třída může mít pouze jednu rodičovskou třídu! | *Třída může mít pouze jednu rodičovskou třídu! | ||
+ | * Potomek „dědí“ všechny vlastnosti předka. | ||
+ | * Potomek může kdykoli nahradit předka. Takže pokud máme proměnnou datového typu <code>Predek</code>, můžeme do ní uložit instanci třídy <code>Potomek</code>. Opačně to však nejde! | ||
+ | |||
+ | ; Příklad | ||
+ | public class Kamion { | ||
+ | int nosnost; | ||
+ | ... | ||
+ | public int getNosnost() { return this.nosnost; } | ||
+ | ... | ||
+ | } | ||
+ | public class KamionSPrivesem extends Kamion { | ||
+ | Prives prives; | ||
+ | ... | ||
+ | public int getNosnost() { | ||
+ | return this.getHodnota()+this.prives.getHodnota(); | ||
+ | } | ||
+ | ... | ||
+ | } | ||
== Abstraktní třída == | == Abstraktní třída == |
Verze z 28. 2. 2017, 10:01
Obsah |
Dědičnost
- Klíčové slovo
extends
. - Třída může mít pouze jednu rodičovskou třídu!
- Potomek „dědí“ všechny vlastnosti předka.
- Potomek může kdykoli nahradit předka. Takže pokud máme proměnnou datového typu
Predek
, můžeme do ní uložit instanci třídyPotomek
. Opačně to však nejde!
- Příklad
public class Kamion { int nosnost; ... public int getNosnost() { return this.nosnost; } ... } public class KamionSPrivesem extends Kamion { Prives prives; ... public int getNosnost() { return this.getHodnota()+this.prives.getHodnota(); } ... }
Abstraktní třída
- Klíčové slovo
abstract
. - Těla některých metod nejsou uvedena.
Rozhraní
- Klíčové slovo
implements
. - Může mít pouze hlavičky metod a veřejné konstantní atributy.