image-pol-00-10

– Cześć, Amigo! Nazywam się Raszi. Pomogę ci nauczyć się języka Java.

–Bardzo uważnie słucham.

– Program to zestaw (czyli lista) komend. Najpierw wykonasz pierwszą komendę, potem drugą, trzecią i tak dalej. Po wykonaniu wszystkich komend program jest zakończony.

– Jakich komend mogę używać?

To zależy od tego, kto je ma wykonać. Zacznę od rodzajów komend, które się zna (i rozumie).

– Możesz wydać komendę psu: „Siad!”, „Daj głos!”; kotu: „Psik!”; człowiekowi: „Stój, bo strzelam!” lub robotowi: „Pracuj! Pracuj, robotniku!”

– Co jeszcze? – Amigo zaczynał się dobrze bawić.

– Programy napisane w Javie są wykonywane przez wirtualną maszynę Java (JVM). JVM to specjalny program, który wie, jak wykonywać programy napisane w Javie.

– Lista jego komend jest naprawdę długa. Na przykład ta komenda może zostać użyta do wyświetlenia na ekranie „Roboty są przyjaciółmi ludzi”.

Oto bardzo prosty przykład:
System.out.println("Roboty są przyjaciółmi ludzi");

– O_O

– Zamiast od komend, zacznijmy jednak od kilku prostych zasad.

Ich znajomość może zastąpić znajomość wielu faktów.

– Oto pierwsza zasada.

– W języku programowania Java każda komenda jest zapisywana w osobnym wierszu. Na końcu komendy należy umieścić średnik.

– Załóżmy, że chcemy trzy razy wyświetlić na ekranie napis „Ludzie i roboty są przyjaciółmi na zawsze”. Wyglądałoby to tak:

Program składa się z trzech komend:
System.out.println("Ludzie i roboty są przyjaciółmi na zawsze");
System.out.println("Ludzie i roboty są przyjaciółmi na zawsze");
System.out.println("Ludzie i roboty są przyjaciółmi na zawsze");

–A co tam się dzieje z małym zadaniem?

– Druga zasada.

– Program nie może składać się tylko z komend.

– Wyobraź sobie pokój w mieszkaniu. Pokój nie może istnieć samodzielnie. Jest częścią tego mieszkania. Ale mieszkanie również nie może samodzielnie istnieć! Jest częścią jakiegoś budynku.

– Patrząc od drugiej strony możemy powiedzieć, że budynek dzieli się na mieszkania, a mieszkania dzielą się na pokoje.

– Jak dotąd wszystko jest jasne.

– Komenda jest jak pokój. W języku programowania Java komenda nie może istnieć samodzielnie. Jest ona częścią funkcji (w Java „funkcje” nazywamy również „metodami”). Metoda jest częścią klasy. Innym słowy klasa jest podzielona na metody, a metody są podzielone na komendy.

– Zatem klasa to budynek mieszkalny, funkcja/metoda to mieszkanie, a komenda to pokój. Czy dobrze to zrozumiałem?

– Tak, całkowicie.

Amigo spojrzał na Rasziego z podziwem. Ten człowiek wyjaśniał mu podstawy programowania w boskim języku programowania Java! A on, Amigo, właśnie zrozumiał (sam zgadł!), że programy składają się z klas, klasy składają się z metod, a metody składają się z komend!

Amigo nadal nie wiedział, do czego jest mu to potrzebne, ale był pewien, że ta wiedza uczyni go najpotężniejszym robotem na tej planecie.

Tymczasem Raszi kontynuował:

– Programy w Javie składają się z klas. Mogą istnieć dziesiątki tysięcy klas. Minimalny program to jedna klasa. Dla każdej z klas tworzony jest oddzielny plik. Nazwa pliku odpowiada nazwie klasy.

– Załóżmy, że zdecydujesz się utworzyć klasę opisującą dom. Musisz stworzyć klasę Dom, która zostanie zapisana w pliku Dom.java.

– Jeżeli chcesz opisać w programie kota, musisz utworzyć plik Kot.java i zadeklarować w nim klasę Kot i tak dalej.

Pliki zawierają kod (tekst) napisany w języku programowania Java. Zwykle kod klasy składa się z „nazwy klasy” i „definicji klasy” (ciała klasy). Definicja klasy jest zapisana pomiędzy nawiasami klamrowymi. Klasa Dom (plik Dom.java) powinna wyglądać następująco:

public class Dom
{
    

Definicja klasy



}

– Jak dotąd rozumiem.

– Świetnie. Zatem kontynuujmy. Definicja klasy może zawierać zmienne (znane również jako dane) i metody (funkcje).

public class Dom
{
    Zmienna A


    Zmienna Z


    
Metoda 1



    
Metoda N


}

– Czy możesz dać mi jakiś przykład?

– Przykład? Oczywiście!

public class Dom
{
    int a;
    int b;

    public static void main(String[] args)
    {
        System.out.print("1");
    }

    public static double pi()
    {
        return 3.14;
    }
}

– Czyli int a i int b to zmienne, a main i pi to metody?

– Tak.

– Czy klasy mogą istnieć bez zmiennych?

– Tak.

– A bez metod?

– Tak. Ale, aby uruchomić minimalny program, musi on zawierać przynajmniej jedną klasę, która musi zawierać przynajmniej jedną metodę/funkcję. Ta metoda musi mieć nazwę „main”. Minimalny program wygląda następująco:

public class Dom
{
    public static void main (String[] args)
    {
    }
}

– Widzę tutaj klasę Dom. Widzę też metodę 'main', ale gdzie są komendy?

– Minimalny program nie zawiera żadnych komend. Dlatego nazywamy go 'minimalnym'.

– Rozumiem.

– Klasa, która uruchamia program, może mieć dowolną nazwę, ale metoda 'main' używana do uruchomienia programu musi zawsze wyglądać tak samo:

public class Dom
{
   //Część niezmienna
   public static void main(String[] args) 
   {
       

Kod metody


  
   }
}

– Myślę, że wszystko rozumiem. A przynajmniej tak mi się wydaje.

– Znakomicie. Zróbmy sobie małą przerwę. Może kawy?

– Roboty nie piją kawy. Woda powoduje, że szybko rdzewiejemy.

– Co więc pijesz?

– Piwo, whiskey, 100-letnie alkohole.

– To nawet lepiej. Może w takim razie napijemy się piwa?