Příklad

Cíl: vylepšit třídu Ucet

Postup:

  1. Zdokonalíme náš příklad s účtem tak, aby si účet "hlídal", kolik se z něj převádí peněz

  2. Zdokonalenou verzi třídy Ucet nazveme KontokorentniUcet

    public class KontokorentniUcet extends Ucet { 
            // double zustatek; znovu neuvádíme
            // ... zdědí se z nadtřídy/předka "Ucet" 
            
            // kolik mohu "jít do mínusu" 
            double povolenyKontokorent; 
    
            public void  pridej(double castka) { 
                if (zustatek + povolenyKontokorent + castka >= 0) { 
                    // zavoláme původní "neopatrnou" metodu
                    super.pridej(castka); 
                } else { 
                    System.err.println("Nelze odebrat částku " + (-castka)); 
                } 
            } 
    
            // public void vypisZustatek() ... zdědí se 
            // public void prevedNa(Ucet u, double castka) ... zdědí se
            // ... předpokládejme, že v třídě "Ucet" používáme variantu:
            //     pridej(-castka); 
            //     u.pridej(castka); 
            // }
    }
    

    Příklad kompletního zdrojového kódu třídy

Vzorový zdroják sám o sobě nepůjde přeložit, protože nemáme třídu, na níž závisí. Celý kód vystavím až po kontrole příslušných úloh.