Prezentacja współfinansowana przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach projektu Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu wiedzy technicznej w regionie Java Podstawy Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl
C:\Program Files\Java C:\Program Files (x86)\java Różne wersje środowiska Java mogą koegzystowad w jednym systemie.
C:\Program Files (x86)\java\jdk1.7.0_03\bin java.exe Uruchamia programy napisane w Javie javac.exe Kompilator- tłumaczy kod źródłowy na kod bajtowy jar.exe Narzędzie do kompresji plików do formatu jar javadoc.exe Narzędzie do generowania dokumentacji na podstawie komentarzy zawartych w kodzie źródłowym programów javaw.exe Uruchamia np. pliki jar ze spakowanymi skompilowanymi plikami z kodem bajtowym Javy Java
Hello World! C:\przyklady\01_HelloWorld\HelloWorld.java Uwaga! Nazwa publicznej klasy w pliku musi byd taka sama jak nazwa pliku! (Może więc byd tylko jedna taka klasa w pliku.)
Hello World! Klasa jest publiczna Słowo kluczowe języka oznaczające definicję klasy Nazwa klasy
Hello World! Nawiasy wyznaczające zakres klasy
Hello World! Metoda main jest punktem startowym aplikacji : publiczna (public) statyczna (static) może byd użyta bez potrzeby tworzenia konkretnego obiektu tej klasy zwraca typ pusty void jako argument przyjmuje tablicę obiektów typu String (parametry przesłane do programu)
Wypisanie pozdrowienia na ekranie Java Hello World!
Hello World! kompilator Taki błąd oznacza, że w systemie nie jest znana ścieżka do kompilatora.
Hello World!
Hello World! Brak błędów kompilacji Plik.class z kodem bajtowym
Hello World! Zawartośd pliku z kodem bajtowym mało czytelne dla ludzi. Kod bajtowy jest wykonywany przez maszynę wirtualną Javy. (java.exe)
Hello World! Maszyna wirtualna Javy
Hello World! Zaletą takiego rozwiązania jest możliwośd uruchomienia programów Javy (kodu bajtowego) na dowolnym systemie z zainstalowaną maszyną wirtualną Javy. Np. Plik z kodem źródłowym może byd skompilowany pod systemem Windows, powstały kod bajtowy (plik.class) może byd następnie skopiowany do systemu UNIX i uruchomiony bez żadnych zmian.
Uruchomienie programu Java Hello World!
Hello World! Uwaga! Błąd! Nazwę pliku do wykonania przekazujemy bez rozszerzenia.class Plik źródłowy HelloWorld.java nie jest potrzebny do uruchominia programu.
Hello World! Programy w Javie często są dystrybuowane w postaci pakietów jar. (JAR = Java ARchive)
Hello World!
Hello World! Możemy zajrzed do pliku jar np. za pomocą programu WinRar. Katalog META-INF zawiera manifest.
Hello World! Błąd! Nie wskazaliśmy, gdzie (w jakiej klasie) znajduje się funkcja main będąca punktem startowym aplikacji!
Hello World! Parametr e wskazuje EntryPoint czyli punkt startowy aplikacji (klasa HelloWorld).
Hello World! Klasa z metodą main Ok!
Hello World! C:\przyklady\02_HelloWorld_pakiety\com\mb Pliki w programach Javy są przeważnie organizowane w pakiety. Służy temu słowo kluczowe package. Musi ono byd w pierwszej linijce pliku z kodem źródłowym. Struktura katalogów, w jakich znajduje się plik.java musi odpowiadad nazwie pakietu.
Hello World! Złe miejsce uruchomienia programu!
Hello World! Brak podanej ścieżki do klasy HelloWorld
Hello World! Uwaga! / a nie \ Ok!
Hello World! / Tworzenie plików jar w przypadku użycia pakietów.
Hello World!
Również poprawna wersja Java Hello World!
Hello World!
Hello World! start.bat W celu wygodnego uruchamiania można przygotowad prosty plik wsadowy (rozszerzenie.bat) z poniższą zawartością:
Hello World! Uruchomienie start.bat
Hello World!
Hello World! w Netbeans
Hello World! w Netbeans
Hello World! w Netbeans Nazwa projektu Generowanie klasy z metodą main umieszczonej w odpowiednim pakiecie
Hello World! w Netbeans Dodaj nowy pakiet
Nowy pakiet Java Hello World! w Netbeans
Hello World! w Netbeans Dodaj nową klasę
Hello World! w Netbeans
Hello World! w Netbeans Crtl + Spacja : włączenie podpowiadania przez Netbeans podpowiedzi.
Hello World! w Netbeans Uruchomienie: Skrót: F6
Hello World! w Netbeans
Hello World! w Netbeans W projekcie może byd kilka klas, które mają metodę main. Należy wtedy jednoznacznie wskazad, która z nich ma byd punktem startowym aplikacji.
Hello World! w Netbeans
Po F6 widzimy poprzednią wersję Java Hello World! w Netbeans Należy zmienid metodę main, która "startuje" aplikację.
Hello World! w Netbeans F6
Hello World! w Netbeans Gdzie można znaleźd swój projekt:
Hello World! w Netbeans Jeśli zainstalowanych jest więcej niż jedna platform Javy: Jeśli chcemy użyd w projekcie zewnętrznych bibliotek (plików jar):
A także: Java Hello World! w Netbeans
Hello World! w Netbeans Opcje budowania plików jar za pomocą Netbeansa:
Hello World! w Netbeans F11 budowanie projektu (generowanie pliku jar)
Hello World! w Netbeans Struktura projektu Netbeans C:\Users\mb\Documents\NetBeansProjects\HelloWorld Kod bajtowy: pliki.class Pliki z kodem źródłowym Zbudowane pliki jar, gotowe do dystrybucji
Hello World! w Netbeans Plik manifestu jest dodawany automatycznie.
Komentarze Block Comments
Komentarze Single-Line Comments Trailing Comments
Komentarze End-Of-Line Comments
Komentarze
Komentarze Specjalne znaczniki w komentarzach są używane przez javadoc.exe do automatycznego generowania dokumentacji.
javadoc.exe tworzenie dokumentacji
javadoc.exe tworzenie dokumentacji
javadoc.exe tworzenie dokumentacji
Przykład: PytanieOdpowiedz
Przykład: PytanieOdpowiedz Wybierz Set as Main Project by PytanieOdpowiedz był aktualnym projektem, tzn. uruchamianie przez F6 czy budowanie przez F11 będzie się odnosiło właśnie do tego projektu.
Przykład: PytanieOdpowiedz komentarze
Intermezzo: try-catch-finally W Javie bardzo wymagane jest dbanie o bezpieczeostwo wykonywanych poleceo. Wymusza to częste dbanie o pojawienie się możliwych wyjątków.
Potencjalne problemy podkreślone na czerwono Java Przykład: PytanieOdpowiedz
Przykład: PytanieOdpowiedz Po wskazaniu kursorem żarówek :
Przykład: PytanieOdpowiedz Po klinknięciu żarówki dostajemy propozycje rozwiązania problemu: zaimportowanie potrzebnych klas:
Przykład: PytanieOdpowiedz W Javie nie można zostawid potencjalnych problemów. Próba odczytania linijki tekstu ze standardowego wejścia może nie zakooczyd się sukcesem.
Rozwiązanie 1: Java Przykład: PytanieOdpowiedz
Przykład: PytanieOdpowiedz Rozwiązanie 2: Deklaracja dla innych części programu, że ta funkcja może wyrzucad wyjątek i ktoś inny powinien się nim zająd.
Przykład: PytanieOdpowiedz lub jeśli
Przykład: PytanieOdpowiedz
Zadanie Napisz program, który: - Pyta użytkownia o imię oraz wiek - Pyta jaki jest aktualnie rok - Wypisuje informacje o tym, w którym roku użytkownik się urodził oraz w jakim wieku będzie w roku 2034
Słowa kluczowe
Projekt Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu wiedzy technicznej w regionie współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego Instytut Fizyki Politechniki Krakowskiej pok. F206a, ul. Podchorążych 1, 30-084 Kraków tel.: +48 12 6370666 w. 28, faks: +48 12 6371446 e-mail: wiedza@pk.edu.pl www.wiedza.pk.edu.pl