Twitter: @grzegg
Kategoria: java, Tagi: - .

Java [01] – Pierwszy program w NetBeans

We wpisie Java 8 i NetBeans IDE – instalacja na Linuksie (Linux Mint, Ubuntu) opisałem jak zainstalować Javę 8 oraz NetBeans IDE co pozwoliło stworzyć całkiem wygodne środowisko programowania. Teraz nadszedł czas na krótki opis ważniejszych elementów interfejsu NetBeans i stworzenie w nim pierwszego programu.


Ta strona jest częścią materiałów do kursu “Programowanie w Javie z elementami bioinformatyki dla poczatkujących”. Pozostałe materiały znajdziesz tutaj

Tworzenie pierwszego programu w środowisku NetBeans

Świeżo zainstalowany NetBeans IDE wygląda mniej więcej tak:

Jak widać domyślnie otwiera się strona startowa, która zawiera liczne linki do przydatnych źródeł informacji takich jak dema, tutoriale, dokumentacja a także screencast. Warto w wolnej chwili zajrzeć przynajmniej do niektórych z nich, teraz jednak przejdę bezpośrednio do stworzenia pierwszego programu. Nie chcąc wyłamywać się z mającej dziesięciolecia tradycji, pierwszy program będzie oczywiście programem „Hello World!”, czyli po naszemu „Witaj Świecie!’.

Programując w NetBeans programy, nawet takie składające się z jednego pliku źródłowego, umieszczam w „projektach”. Zacznę więc od stworzenia projektu. W tym celu naciskam odpowiednią ikonę znajdującą się w pasku narzędziowym.

Voila_Capture2014-06-12_01-35-06_PMcopy.png

Można też użyć pozycji w Menu->New Project…, albo skrótu klawiszowego: (Linux/Windows: Ctrl+Shift+N, Mac: Shift+Cmd+N).

Pojawia się okno, w którym dokonujemy wyboru rodzaju projektu:


Wybieram: Java -> Java Application i wciskam „Next >”.

Pokazuje się okno ustawień niektórych parametrów projektu.


Nazwę ustawiam na „WitajSwiecie” (unikam polskich liter w nazwach projektów, plików, klas, metod etc…, nie wstawiam też spacji pomiędzy słowami). W kolejnych polach można ustawić miejsce zapisu projektu. Pozostawiam zaznaczone pole „Create Main Class”. Wciskam „Finish”.


W oknie głównym programu pojawiły się trzy okienka:

  1. Okno główne w którym wyświetla się zawartość plików z kodem źródłowym (m. in.). U góry widać karty, możemy więc jednocześnie otworzyć wiele plików i łatwo się pomiędzy nimi poruszać. Zaraz wrócę do zawartości pliku z kodem.
  2. Eksplorator projektu pomagający nam odnaleźć się w gąszczu projektów, pakietów, klas i innych plików.
  3. Nawigator, który pokazuje strukturę kodu. Teraz widać jedną klasę (WitajSwiecie) i jedną metodę (main).

Ogólna struktura kodu pierwszego programu

Teraz przyjrzyjmy się kolejnym liniom kodu. Na razie zrobię to pobieżnie, bardziej szczegółowo omówię kod w następnej części.

Linie: 1–5, 9–12, 15–17 oraz 19 zawierają komentarze. Są to fragmenty, które nie zawierają wykonywanego kodu (choć mogą zawierać pewne informacje istotne dla programu).

W linijce nr. 7 znajduje się instrukcja:

package witajswiecie

Informuje ona, że plik jest częścią pakietu o nazwie witajswiecie. Pakietami zajmę się kiedy indziej, teraz wystarczy powiedzieć, że pakiet to pewien zbiór plików zebrany w całość.

Linia 13 wygląda tak:

public class WitajSwiecie {

Jest to deklaracja klasy o nazwie WitajSwiecie. Na razie nie będę wyjaśniał czym dokładnie jest klasa (podobnie jak co oznacza instrukcja public) na razie przyjmijmy, że jest to pewny wydzielony fragment kodu i że w Javie cały kod musi być umieszczony w klasach. Linijkę zamyka znak {. Otwiera on blok (czyli wiele linii) kodu, który kończy się w linii 22, gdzie znajduje się jego zamykający odpowiednik }. Te dwa znaki określają zakres kodu, który obejmuje klasa WitajSwiecie.

Linia 18:

public static void main(String[] args) {

Jak widać na końcu tej linii znów znajduje się znak {, tym razem otwiera on zawartość metody o nazwie main. Koniec metody znajduje się w linii 20, gdzie znajduje się zamykający znak }.

Metody to, znów nie wchodząc w szczegóły, pewne wydzielone fragmenty kodu, zazwyczaj wykonujące określone zadanie.

Wewnątrz metody main znajduje się wyłącznie linia komentarza informująca nas, że tu trzeba wpisać kod, co też uczynię. Usuwam linijkę z komentarzem i zamiast niej wpisuję:

System.out.println("Witaj Świecie!");

Po usunięciu komentarzy zawartość pliki „WitajSwiecie.java” powinna wyglądać tak:

}
`

Uruchomienie programu w środowisku NetBeans

Teraz przyszedł czas na uruchomienie naszego pierwszego programu. W tym celu naciśnij ikonę z dużą zieloną strzałką, lub użyj klawisza F6.


Na dole, pod okienkiem z kodem pojawiło się nowe okno zatytułowane „Output – Witaj Swiecie (run)”. Pokazuje ono wynik działania programu oraz pewne dodatkowe informacje. Nasz program miał tylko jedną czynność do wykonania, wyświetlić w terminalu napis „Witaj Świecie!”. Do tego właśnie służy komenda, którą wpisałem. Zauważ że w nawiasie znajduje się (w cudzysłowie) tekst do wyświetlenia. Można go oczywiście zmienić.

Skróty klawiszowe

Używane NetBeans IDE ułatwiają ikony oraz rozwijane menu, ale znacznie szybciej i wydajniej można pracować, jeśli stosuje się, przynajmniej przy najczęściej wykonywanych czynnościach, skróty klawiszowe. Szybciej jest np. przycisnąć kombinację klawiszy Ctrl+C niż znaleźć odpowiednią pozycję w menu pozwalającą na skopiowanie tekstu. Spis użytecznych skrótów klawiszowych w formie „ściągi” można otworzyć w menu Help->”Keyboard Shortcuts Card”. W internecie można plik znaleźć [tutaj][https://netbeans.org/project_downloads/usersguide/shortcuts-80.pdf]. Warto go sobie wydrukować i powiesić na ścianie obok komputera.

Struktura katalogu z projektem i uruchomienie programu z linii komend

Kiedy uruchomiłem program, z kodu źródłowego został utworzony plik wykonywalny (zob. następna lekcja). Teraz pokażę jak można go uruchomić bez pośrednictwa środowiska NetBeans. Najpierw wędruję do katalogu, w którym zapisany jest projekt. Pod Linuksem jest to domyślnie katalog NetBeansProjects znajdujący się w katalogu domowym użytkownika (~/NetBeansProjects). Tam znajdują się katalogi zawierające pliki projektów tworzonych pod NetBeans IDE, o ile nie zażyczymy sobie inaczej. Obecnie mam tam jeden katalog o nazwie WitajSwiecie, pokrywającą się z nazwą projektu. Zawiera on dwa pliki (build.xml, manifest.mf), których nie będę analizować, oraz trzy katalogi:

  • nbproject – zawiera pliki związane z projektem tworzonym przez NetBeans IDE – także nie będę ich omawiał
  • src – tutaj znajduje się katalog witajswiecie, który jest też nazwą pakietu, w której znalazła się klasa, którą stworzyliśmy. W tym katalogu znajduje się plik WitajSwiecie.java zawierający kod źródłowy. Możesz to sprawdzić otwierając go w dowolnym edytorze tekstu.
  • build – w tym katalogu znajduje się katalog classes, w nim katalog witajswiecie (nazwa pakietu) a w nim plik WitajSwiecie.class, to właśnie on zawiera program, który możemy uruchomić.

Aby uruchomić program, najpierw uruchamiam terminal. Można użyć ikony z menu systemowego LinuxMint:


W terminalu używając komendy cd udaję się do wspomnianego powyżej katalogu classes.

cd ~/NetBeansProjects/WitajSwiecie/build/classes

W katalogu znajduje się kolejny katalog witajswiecie (nazwa odpowiada nazwie pakietu) a w nim plik WitajSwiecie.class, który zawiera program. Można to sprawdzić używając komendy: ls -R

Następnie wykonuję komendę:

java witajswiecie.WitajSwiecie

Pojawia się tekst:

Witaj Świecie!

Co oznacza, że program działa.


Zauważ, że:

  • aby wykonać komendę nie przeszedłem do katalogu z plikiem wykonywalnym, ale do katalogu, zawierającego katalog pakietu
  • komenda uruchamiająca program ma formę: java nazwapakietu.NazwaKlasyZawierającejMetodęMain

Choć jak widać jestem w stanie tą metodą uruchomić program niezależnie od środowiska NetBeans, nie jest to forma programu najwygodniejsza do dystrybucji. Nieco więcej informacji na ten temat można znaleźć np. tu: https://ggoralski.pl/?p=726.

Ta strona jest częścią materiałów do kursu “Programowanie w Javie z elementami bioinformatyki dla poczatkujących”. Pozostałe materiały znajdziesz tutaj

4 komentarze Java [01] – Pierwszy program w NetBeans

  • Marek

    Witam!
    Dziś rozpocząłem naukę kursu. Jednak w oknach gdzie wrzucasz kod pojawia się " zamiast znaku „.Niestety to może trochę utrudniać naukę. Czy to jest kwestia ustawienia mojej przeglądarki (korzystam z Chrome)?? Czy można poprawić tę kwestię. Pozdrawiam i dziękuję za pomoc. Marek

    • Marek

      Miało być, że pojawia się napis „q u o t;” zamiast „, ale w moim poprzednim komentarzu zamieniło na ” stąd trochę zamieszania.

      • Grzegorz

        Zauważyłem, że od czasu do czasu zapewne WordPress albo wtyczka do wyświetlania kodu robi takie psikusy. Kiedy to zauważę to staram się poprawić, także dziękuję za zwrócenie uwagi. W razie znalezienia następnych błędów proszę śmiało pisać.
        Pozdrawiam!

  • marcin0218

    U mnie mam w NetBeans problem, że jak naciskam S+ALT+SHIFT by zrobić literkę Ś w wyrazie Świecie, to pokazuje się w kodzie ta literka ale uruchamia mi jakieś okno, tak jakby to byłskrót klawiszowy :/

Leave a Reply to Marek Cancel reply