– Witaj, mój młody przyjacielu. Mam nadzieję, że nie zapomniałeś, że jestem biurokratą 16. generacji. Gdybym nie porządkował całej posiadanej wiedzy, nigdy nie osiągnąłbym tego statusu. Jestem pełen przydatnych informacji. Pomogę Ci w niektórych zadaniach. Na początek opowiem o typowym programie Java.
– Słucham.
– Fakt numer jeden. Program Java składa się z klas. Każda klasa jest przechowywana w osobnym pliku, którego nazwa pokrywa się z nazwą klasy. Rozszerzenie nazwy pliku to java.
– Zatem program składa się z wielu plików o rozszerzeniu „java” i każdy plik zawiera kod tylko jednej klasy, zgadza się?
– Dokładnie, Amigo. Jeżeli plik nazywa się MojKot.java, zawiera on klasę MojKot.
– Fakt numer dwa. Jeśli mamy wiele plików klas, grupujemy je w folderach i podfolderach. Dodatkowo klasy są pogrupowane w pakiety i podpakiety. Nazwy pakietów i podpakietów muszą być wskazane w kodzie klasy i powinny być identyczne z nazwami folderów i podfolderów na dysku.
– Zatem z jednej strony mamy pliki przechowywane w folderach, a z drugiej strony – klasy przechowywane w pakietach. Nazwa klasy musi również pokrywać się z nazwą pliku opisującego klasę. Nazwa pakietu pokrywa się z nazwą folderu, w którym przechowywana jest klasa.
– Czy możesz podać mi więcej szczegółów?
– Nazwy zagnieżdżonych pakietów są podzielone na sekcje, prawie jak adresy URL.
– Innymi słowy: załóżmy, że masz klasę o nazwie Kot, przechowywaną w pakiecie zwierzaki.udomowione. To znaczy:
Na dysku twardym istnieje folder (nazwijmy go src), w którym przechowywane są wszystkie pliki tego projektu.
Zawiera on folder o nazwie zwierzaki, w którym z kolei znajduje się podfolder: udomowione.
Folder udomowione zawiera plik Kot.java, który z kolei zawiera kod klasy Kot.
– Nie jestem pewien, czy rozumiem.
– Spójrz. Struktura klas i pakietów odzwierciedla strukturę folderów i plików na dysku. Jeżeli mamy plik o nazwie Dom.java, przechowywany w folderze src/com/domy, to istnieje klasa o nazwie Dom, przechowywana w pakiecie com.domy.
– Kumam.
– Wydaje mi się, że szybko to łapiesz. Spójrz na ekran. To jest kod małej klasy. Oznaczyłem wszystkie kluczowe części:
NAZWA PAKIETU
package com.futujava.lesson2;
import java.io.IOException;
/**
* Użytkownik: Ogólny
* Data: 21/12/12
* Godzina: 11:59
*/
NAZWA KLASY
public class Task1
{
⎤
private static String TEKST = "Pocałuj mój metalowy tylny siłownik";⎥ ZMIENNA KLASY
⎦
⎤
public static void main(String[] args) throws IOException ⎥
{ ⎥
WYŚWIETLANIE NA EKRANIE JEDNOLINIOWY KOMENTARZ ⎥
System.out.println(TEKST); //Wyświetla jeden ciąg ⎥
WIELOLINIOWY KOMENTARZ ⎥
/* ⎥
To jest wieloliniowy komentarz. ⎥
Kod poniżej wyświetli trzy identyczne napisy. ⎥ METODA main()
*/ ⎥
DEKLARACJA ZMIENNEJ ⎥
String s = "Ho-ho-ho!"; ⎥
WYWOŁANIE METODY ⎥
printTekstWieleRazy(s, 3); ⎥
} ⎥
⎦
PARAMETRY METODY ⎤
public static void printTekstWieleRazy(String s, int licznik) ⎥ SYGNATURA METODY
⎦
⎤
{ ⎥
PĘTLA ⎥
for (int i = 0; i < licznik; i++) ⎥
STRUKTURA PĘTLI ⎥ STRUKTURA METODY/KOD
{ ⎥
System.out.println(s); ⎥
} ⎥
} ⎥
⎦
}
– Ha, wszystko jest tak zrozumiałe, jak to tylko możliwe... po jednym wyjaśnieniu.
– Dobrze! Na ten moment to wystarczające. Po prostu spróbuj zrozumieć cokolwiek. Pełne zrozumienie przyjdzie z czasem. Teraz idę uciąć sobie drzemkę. Ktoś inny będzie kontynuował Twoje szkolenie.
GO TO FULL VERSION