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
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.
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:
- 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.
- Eksplorator projektu pomagający nam odnaleźć się w gąszczu projektów, pakietów, klas i innych plików.
- 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:
1 2 3 4 5 6 7 8 |
package witajswiecie; public class WitajSwiecie { public static void main(String[] args) { System.out.println("Witaj Świecie!"); } |
}
`
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ę katalogwitajswiecie
, który jest też nazwą pakietu, w której znalazła się klasa, którą stworzyliśmy. W tym katalogu znajduje się plikWitajSwiecie.java
zawierający kod źródłowy. Możesz to sprawdzić otwierając go w dowolnym edytorze tekstu.build
– w tym katalogu znajduje się katalogclasses
, w nim katalogwitajswiecie
(nazwa pakietu) a w nim plikWitajSwiecie.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
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
Miało być, że pojawia się napis „q u o t;” zamiast „, ale w moim poprzednim komentarzu zamieniło na ” stąd trochę zamieszania.
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!
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 :/