Java pro zelenáče

Aktualizováno: 6. 11. 2019, datum vydání: 1. 3. 2011

Java pro zelenáče je učebnicí jazyka Java. V dnešní době je již vyprodaná. Pro začátečníky jinak považuji za lepší a vhodnější literaturu knihu od Pavla Herouta: Učebnice jazyka Java. Byla nám pro začátky doporučena učitelem Javy na ČVUT, a byl to opravdu dobrý výběr.

Kniha Java pro zelenáče od pana Miroslava Viriuse (též učitel na ČVUT), mi pro začátečníky připadá těžkopádná a málo srozumitelná. Místo toho, aby Javu ukazoval na úplně jednoduchých příkladech, tak velice rychle zabíhá do příliš velkých složitostí a problémů, které podle mne úplný začátečník nemůže být schopen strávit a Javu asi velice brzo zavrhne, protože se ztratí.

Ke knize jsem přidala dolů pár svých poznámek, které řeší problémy, na které jsem narazila při pročítání knihy. Tyto poznámky se Vám také mohou hodit, pokud budete s Javou začínat. V poznámkách je vysvětleno, jak Javu spustit. Pokud se Vám nepodaří Javu spustit, nemá smysl, abyste pokračovali dále. Programování se naučíte programováním a nikoli pouze čtením knížek…

Miroslav Virius: Java pro zelenáče:

Obsah knihy:

  1. Úvod
  2. Nad šálkem kávy
  3. První program
  4. Jednoduché příklady
  5. Složitější příklad
  6. Začínáme naostro
  7. Datové typy, proměnné
  8. Výrazy a operátory
  9. Příkazy
  10. Třídy objekty
  11. Vyjímky
  12. Rozhraní
  13. Soubory, vstupy a výstupy
  14. Grafické uživatelské rozhraní
  15. Aplety
  16. Literatura
  17. Rejstřík

Podrobný obsah knihy:

  1. Úvod
  2. Nad šálkem kávy
    • Počítač
      • Operační paměť
    • Datové typy a proměnné
    • Programy a programovací jazyky
      • Operační systém
    • Programy a algoritmus
    • Objekty a třídy
      • Zapouzdření
      • Dědičnost
      • Polymorfizmus
      • Dědičnost versus skládání
    • Java neboli kafe
      • Kde ji získat
      • Třídy v Javě
      • Java a C++
  3. První program
    • Ahoj, lidi
      • Zdrojový text
      • Překlad
      • Běh programu
    • Co jsme naprogramovali
      • Komentář
      • Deklarace třídy
      • Metoda main()
      • Doplňující poznámky
    • Vlastní dokumentace
  4. Jednoduché příklady
    • Měníme svůj první program
      • Hry s texty
    • Trocha počítání
    • Vstup dat
    • Faktoriál
      • Metoda faktorial()
      • Magická čísla
    • Pozdrav z Marsu
      • Jak je to s texty
  5. Složitější příklad
    • Počítání slov poprvé
      • Třída Analyzer
      • Běh programu: vyjímky
      • Kontejner
      • Analýza řádku
    • Počítání slov podruhé
    • Počítání slov potřetí
      • Jednosměrně zřetězený seznam
      • Prvek seznamu
      • Implementace seznamu
  6. Začínáme naostro
    • Základní pojmy
      • Komentář
      • Identifikátor
      • Klíčová slova
      • Zápis programu
    • Organizace zdrojového kódu: balíky
      • Jména balíků
      • Deklarace a používání balíku
  7. Datové typy, proměnné
    • Primitivní datové typy
      • Celá čísla
      • Znaky
      • Reálná čísla
      • Logické hodnoty
      • "Prázdný" typ void
    • Skupina proměnných: pole
      • Deklarace a vytvoření pole
      • Inicializace
      • Kopírování polí
      • Vícerozměrná pole
      • Inicializace vícerozměrných polí
      • Kopírování vícerozměrných polí
    • Objekty
    • Automatická správ paměti
    • Proměnné
      • Deklarace
      • Neinicializované proměnné
  8. Výrazy a operátory
    • Vlastnosti operátorů
    • Aritmetické výrazy
      • Smíšené výrazy
    • Relační výrazy
    • Logické výrazy
    • Přehled operátorů
      • Podmíněný výraz
      • Konverze a přetypování
      • Operátor čárka
      • Přiřazovací operátor
  9. Příkazy
    • Blok (složený příkaz)
      • Vnořené bloky
    • Výrazový příkaz
      • Prázdný příkaz
    • Rozhodování
      • Příkaz if
      • Příkaz switch (přepínač)
      • Příkaz break
    • Cykly
      • Příkaz while
      • Příkaz do-while
      • Cyklus for
      • Příkaz break
      • Příkaz continue
    • Přenos řízení
      • Příkaz return
  10. Třídy  objekty
    • Deklarace třídy
      • Modifikátory v deklaraci třídy
    • Tělo třídy
      • Přístupová práva
    • Datové složky
      • Nestatické datové složky
      • Statické datové složky
    • Metody
      • Deklarace metody
      • Parametry metod
      • Nestatické metody
      • Statické metody
      • Lokální proměnné
      • Třída Bod
      • Rekurze
      • Metoda main()
      • this
      • Konstruktory
    • Dědění
      • Předefinované metody
      • super
      • Konstruktor potomka
      • Příklad: grafické objekty
      • Abstraktní metody, abstraktní třídy
      • Finální třídy, finální metody
  11. Vyjímky
    • Vyjímka v Javě
      • Třídy pro přenos informací o vyjímkách
      • Vznik vyjímky
    • Ošetřování vyjímek
      • Handler
      • Koncovka
    • Vyjímky a metody
  12. Rozhraní
    • Deklarace a implementace rozhraní
      • Deklarace rozhraní
      • Implementace rozhraní
    • Použití rozhraní
      • Příklad: kontrola konzistence objektů
      • Klonování objektů
      • Anonymní třída implementující rozhraní
  13. Soubory, vstupy a výstupy
    • Soubor a jeho vlastnosti
    • Čtení a zápis binárních dat
      • Čtení a zápis primitivních typů
      • Přenositelnost a nepřenositelnost binárních souborů
      • Ukládání objektů (serializace)
    • Čtení a zápis znakových dat
      • Zápis do textového souboru
      • Čtení z textového souboru
      • Čeština v Javě a pod Windows
  14. Grafické uživatelské rozhraní
    • První okno
      • Správné ukončení programu
      • Vlastnosti komponent
      • Velikost a umístění okna
    • Používání komponent
      • Vkládáme komponenty do okna
      • Učíme tlačítko fungovat
      • Události trochu podrobněji
    • Piškvorky, verze 1.0
      • Požadavky
      • Komponenty
      • Program
    • Piškvorky, verze 2.0
      • Přidáváme nabídku
      • Ukončení programu
      • Zpět
      • Nová hra
      • Okno O programu
      • Volby
    • Piškvorky, verze 2.1
      • A co dál
  15. Aplety
    • Struktura apletu
      • Metody apletu
      • Příklad
      • Aplet spuštěný jako aplikace
    • Spuštění apletu
  16. Literatura
  17. Rejstřík

Mé poznámky ke knize:

Kapitola 02/01 Ahoj.java - jak spustit svou první aplikaci v MS-DOS

Postup spuštění prvního programu je sice v knížce popsán na straně 25 až 28, ale i tak si troufnu říci, že ne každému se to může na první pokus podařit. Bylo by škoda Javu zahodit kvůli prvnímu nezdaru. Následující řádky by Vám případně mohly pomoci.

1. Nainstalování Javy

Pro vývoj aplikací v Javě pro naše účely Vám stačí Java SE JDK, která je ke stažení zde.

2. Editor:

Pro editaci zdrojového kódu lze použít například jednoduchý textový editor PSPad, který umí i syntaxi Javy. Případně můžete použít klasický notepad (poznámkový blok).

3. Překladač a spouštění kódu

Kniha předpokládá, že nepoužíváte žádná vizuální vývojová prostředí jako je například NetBeans. Tato vizuální prostředí by se Vám jinak o kompilaci a spuštění kódu starala sama, ale zase to vyžaduje jejich znalost. Cílem knihy není Vás učit konkrétní vizuální prostředí, ale jednoduché programování v Javě. Až se člověk naučí trochu programovat, tak je vhodné se poohlížet po vizuálních prostředích. Používání NetBeans je ale příjemné a není až tak složité, takže já ho se studenty nakonec používat budu.

Po té, co ručně napíšete zdrojový kód *.java, musíte ručně spustit překladač Javy. Překladač Javy se spouští aplikací javac.exe. Poté, co se zdrojový soubor *.java přeloží, tak Vám vznikne bajtový kód programu *.class umístěný do stejného adresáře, jako máte zdroják *.java. Tento bajtový kód je třeba spustit aplikací java.exe, a tak se spustí Vámi napsaný program. A teď, jak jednoduše na to.

Překlad (kompilace) kódu

Překladač spustíte příkazovým řádekem MS-DOS ve Windows. Např. v MS Vista příkazový řádek MS-DOS najdete v nabídce "Start > Všechny programy > Příslušenství > Příkazový řádek". Následně musíte najít soubor javac.exe, který bývá v adresáři bin v instalaci Javy. U mne je to například adresář "C:\Program Files\Java\jdk1.6.0_18\bin\javac.exe". Je třeba se v MS-DOS přesunout do tohoto adresáře, protože jinak počítač javac.exe nenajde. Do tohoto adresáře se přesunete příkazem napsaným do příkazového řádku MS-DOS:

MS Vista i MS Windows XP:
cd C:\Program Files\Java\jdk1.6.0_18\bin\

Můj zdrojový soubor z knihy jsem si nahrála na Plochu do adresáře Java. Cesta k němu je například u mne "C:\Users\Vachtova\Desktop\Java\Kap02\01\Ahoj.java"

Překladač javac.exe spustím v příkazovém řádku MS-DOS následně příkazem:

MS Vista:
javac C:\Users\Vachtova\Desktop\Java\Kap02\01\Ahoj.java
MS Windows XP:
javac C:\Docume~1\Vachtova\Plocha\Java\Kap02\01\Ahoj.java

Pokud byl zdrojový soubor Ahoj.java bez syntaktických chyb, tak se po této operaci vytvoří bajtový soubor Ahoj.class umístěný ve stejném adresáři jako Ahoj.java. Pokud máte syntaktickou chybu zdrojovém kódu, tak Vám překladač oznámí chybu. Případnou syntaktickou chybu musíte opravit, soubor uložit a spustit kompilaci znova dokud neproběhne v pořádku.

Spuštění kódu

Samotné spuštění kódu (vašeho programu) provede aplikace java.exe umístěná taky do adresáře bin v instalaci Javy. Aplikaci java.exe je nutné dát cestu v parametru, aby Váš soubor Ahoj.class našla. V MS-DOS spustíte javu příkazem:

MS Vista:
java -classpath C:\Users\Vachtova\Desktop\Java\Kap02\01\ Ahoj
MS Windows XP:
java -classpath C:\Docume~1\Vachtova\Plocha\Java\Kap02\01\ Ahoj

A je to. Měli byste vidět výsledek programu, tj. výstup "Ahoj, lidi" v obrazovce MS-DOS okna.

Pozn.: Cesty k souborům si samozřejmě musíte upravit sobě na míru. Texty jdou do MS-DOS okna vkládat pomocí pravého tlačítka myši a příkazu "Kopírovat". MS-DOS si pamatuje zadávané příkazy a opakovaně je můžete vyvolávat šipkou nahoru a ENTER.

Kapitola 02/01 Ahoj.java - jak spustit svou první aplikaci v NetBeans

Návod, jak spoustit první aplikaci "Hello World" najdete také v tutoriálu Javy či v tutoriálu NetBeans.

V NetBeans se vybere "File > New Project > Java > Java Application" a zadá se "Create Main Class: ahoj.Ahoj". NetBeans obalí kód navíc do balíčku package, ale to nevadí. Vnitřek metody main si zkopírujete následně do kódu. Aplikaci spustíte příkazem "Run Main Project". Výstup programu je vidět v dolním okně.

Kapitola 02/01 Ahoj.java - přesměrování výstupu do souboru

Přesměrování výstupu do souboru je posáno na straně 31. Měla jsem opět probémy s cestami, které jsem ve Vistech vyřešila takto:

java -classpath C:\Users\Vachtova\Desktop\Java\Kap02\01\ Ahoj > C:\Users\Vachtova\Desktop\Java\Kap02\01\text.txt

Kapitola 02/02 Ahoj.java - generování dokumentace

Generování dokumentace v MS-DOS mi nefungovalo! Javadoc se sice spustilo, tvářilo se, že to maká, ale nemaká. Nevím, čím to je. Žádnou dokumentaci mi to nevytenerovalo. Spouštěla jsem to příkazem:

javadoc C:\Users\Vachtova\Desktop\Java\Kap02\01\Ahoj.java

V NetBeans generování dokumentace funguje elegantně a správně. Jde o příkaz "Run > Generate javadoc (Ahoj)". Dokumentace je k dispozici následně v umístění:

C:/Users/Vachtova/Documents/NetBeansProjects/Ahoj0202/dist/javadoc/index.html

Kapitola 03/04 Soucet3.java - využívání třídy MojeIO v MS-DOS a čtení dat ze souboru

Při využívání externí třídy MojeIO byl opět problém s cestami. Vyřešila jsem to následně:

SET CLASSPATH=C:\Users\Vachtova\Desktop\Java\Kap03\04\
javac C:\Users\Vachtova\Desktop\Java\Kap03\04\Soucet3.java
java Soucet3

Načtení dat ze souboru se dalo spustit:

java -classpath C:\Users\Vachtova\Desktop\Java\Kap03\04\ Soucet3 < C:\Users\Vachtova\Desktop\Java\Kap03\04\data.dta

Kapitola 03/04 Soucet3.java - využívání třídy MojeIO v NetBeans

V NetBeans bylo přidání třídy MojeIO jednoduché. MojeIO se přidá pomocí "File > NewFile > Java Class". Kód MojeIO se zkopíruje do zdrojového souboru pod balíček.

Další články