Black Friday Black Friday
Black Friday výprodej! Až 80 % extra bodů zdarma! Více informací zde

Cvičení k 2. lekci OOP v Javě

Java Objektově orientované programování Cvičení k 2. lekci OOP v Javě American English version English version

ONEbit hosting Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem. Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Následující 3 cvičení vám pomohou procvičit znalosti objektově orientovaného programování v Javě z minulé lekce. Ve vlastním zájmu se je pokuste vyřešit sami. Pod článkem máte pro kontrolu řešení ke stažení. Ale pozor, jakmile se na něj podíváte bez vyřešení příkladů, ztrácí pro vás cvičení smysl a nic se nenaučíte :)

Pokud si opravdu nebudete vědět rady, podívejte se raději znovu do minulého tutoriálu a pokuste se na to přijít.

Ohlasy studentů

Jednoduchý příklad

Vytvořte třídu kalkulačka, jejíž atributy jsou dvě čísla. Třída vytvořte metody pro základní početní operace (sčítání, odčítání, násobení, dělení), které vracejí vždy výsledek dané operace s atributy třídy. V praxi by metody samozřejmě dělaly nějaké složitější výpočty, ale nám to takto stačí. Nechte uživatele zadat oba atributy, vytvořte instanci kalkulačky, nastavte jí atributy od uživatele a vypiště výsledky jednotlivých operací.

Ukázka obrazovky programu:

Konzolová aplikace
Zadej 1. číslo:
15.2
Zadej 2. číslo:
22.7
Součet: 37.9
Rozdíl: -7.5
Součin: 345.03999999999996
Podíl: 0.6696035242290749

public class Kalkulacka
{

}

Středně pokročilý příklad

S použitím objektově orientovaného programování vytvořte aplikaci, ve které figuruje nákladní auto, které převáží písek. Toto auto má nosnost 3 tuny a jeho náklad je zpočátku prázdný.

Nechte auto postupně:

  • naložit 10 tun
  • naložit 500 kg
  • vyložit 300 kg
  • vyložit 1 tunu

Jak asi tušíte, naložení a vyložení nákladu bude probíhat pomocí metod, které si před změnou váhy nákladu nejprve ověří, zda je v autě dost místa nebo zda nevykládáme více, než je naloženo. V případě chyby se náklad nevloží/nevyloží.

Po dokončení nakládání a vykládání nechte vypsat kolik je v autě kg nákladu, mělo by vám vyjít 200 kg.

Ukázka obrazovky programu:

Konzolová aplikace
V nákladním autě je naloženo 200 kg

public class NakladniAuto {
}

Pokročilý příklad

Vytvořte aplikaci, evidující dva lidi. Každý člověk má jméno, věk a přítele. Každý člověk se také umí představit a to tak, že vypíše své jméno, věk a jméno svého kamaráda. Vytvořte v aplikaci následující 2 lidi:

  • "Karel Novák", 33 let
  • "Josef Nový", 27 let

Nechte je se skamarádit a představit se.

Ukázka obrazovky programu:

Konzolová aplikace
Ahoj, já jsem Karel Novák, je mi 33 let a můj kamarád je Josef Nový
Ahoj, já jsem Josef Nový, je mi 27 let a můj kamarád je Karel Novák

public class Clovek {
}


 

Stáhnout

Staženo 1141x (56.87 kB)
Aplikace je včetně zdrojových kódů v jazyce java

 

 

Článek pro vás napsal David Čápka
Avatar
Jak se ti líbí článek?
14 hlasů
Autor pracuje jako softwarový architekt a pedagog na projektu ITnetwork.cz (a jeho zahraničních verzích). Velmi si váží svobody podnikání v naší zemi a věří, že když se člověk neštítí práce, tak dokáže úplně cokoli.
Unicorn College Autor sítě se informační technologie naučil na Unicorn College - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity (10)

 

 

Komentáře
Zobrazit starší komentáře (44)

Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:25. října 21:21

Právě jsem tenhle kód, co jsi poslal, odevzdal bez problému, jen jsem tam musel smazat ty bílé znaky, protože jsi nepoužil tlačítko vložit kód a nenapadlo tě, že asi není ok poslat sem kus kódu jako text komentáře.

Editováno 25. října 21:23
Odpovědět 25. října 21:21
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Maroš Motaj
Člen
Avatar
Odpovídá na David Čápka
Maroš Motaj:26. října 9:15

Ahoj, ďakujem. Večer som prišiel na to, že nie je dobre napísaný, že nemôžem dávať metódy do atribútov. Opravím ho a vložím na novo.

Ďakujem :)

 
Odpovědět 26. října 9:15
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Maroš Motaj
David Čápka:26. října 11:48

Ty nikde nedáváš metody do atributů, ty ukládáš návratovou hodnotu metody do atributu, což je v pořádku. Psal jsem, že to jde odevzdat, jen si špatně napsal ten komentář, příště, když chceš do komentáře vložit kód, tak ho naformátuj jako kód.

Odpovědět 26. října 11:48
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Maroš Motaj
Člen
Avatar
Odpovídá na David Čápka
Maroš Motaj:26. října 12:36

ďakujem, už som tam uploadol upravený program na menej riadkov...

 
Odpovědět 26. října 12:36
Avatar
Ondřej Čoček:7. listopadu 18:31

Dobrý den, u té třetí úlohy vytvářím dva objekty, kterým přepisuji atributy (vek, jmeno). Je to spatny postup? Protoze pak nwm jak v metode skamaraditSe() pristoupim k těm mým konkretnim objektum, abych do nich mohl ulozit jejich kamarada. Popřípadě o radu jak to řešit, schválně nechci otevírat řešení...

Díky

 
Odpovědět 7. listopadu 18:31
Avatar
Fíla N.
Člen
Avatar
Odpovídá na Ondřej Čoček
Fíla N.:13. listopadu 8:55

Přes tu metodu jsem to původně také zkoušel, ale pak jsem to udělal tak, že jsem jim každému přiřadil kamaráda
"klasicky" v mainu po vytvoření instancí těch dvou osob.

 
Odpovědět 13. listopadu 8:55
Avatar
Odpovídá na Fíla N.
Ondřej Čoček:13. listopadu 20:00

Jj též jsem to tak udělal, ale díky.

 
Odpovědět 13. listopadu 20:00
Avatar
frantisek spacek:16. listopadu 19:04

Mala textova chybicka v prvom priklade
Ak nalozim 10T prlozim 500 kg vylozim 300 kg a potom vylozim 1T tak mi neostane 200kg ale 9200 kg :-)

 
Odpovědět 16. listopadu 19:04
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na frantisek spacek
David Čápka:16. listopadu 19:08

Přečti si pozorně zadání ;-)

Odpovědět 16. listopadu 19:08
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Odpovídá na David Čápka
frantisek spacek:16. listopadu 19:20

Uz pochopil :-)

 
Odpovědět 16. listopadu 19:20
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 54. Zobrazit vše