Java lab3

background image


Instrukcja do zajęć laboratoryjnych

Java NetBeans

Spis treści

1.

WPROWADZENIE ................................................................................................................................................ 2

2.

TWORZENIE PROJEKTU - PODSTAWY .................................................................................................................. 3

3.

TWORZENIE PROJEKTU – PRZYKŁAD Z WŁASNYM PAKIETEM ............................................................................. 9

3.

TWORZENIE GUI – DODAWANIE 2. LICZB .......................................................................................................... 18

Data: 23.03.2010 r.

Autor: mgr inż. Paweł Wujek

background image

2

1. Wprowadzenie

NetBeans jest projektem typu "open source" o coraz większej popularności i stale wzrastającej
społeczności użytkowników. O wielkim sukcesie NetBeans świadczy fakt, że z projektem tym
współpracuje już prawie 100 (znaczących!) firm na całym świecie. Projekt NetBeans został
uruchomiony w czerwcu 2000 roku przez firmę Sun Microsystems będącą od tej pory głównym
jego sponsorem.

Obecnie istnieją dwa główne produkty: NetBeans IDE i NetBeans Platform. Oprócz nich dostępne
są dwa inne, będące rozszerzeniami do IDE: NetBeans Mobility Pack oraz NetBeans Profiler.

NetBeans IDE jest środowiskiem programistycznym (Integrated Development Environment - IDE)
- narzędziem służącym do tworzenia, kompilowania, uruchamiania i testowania programów. Całe
IDE jest napisane w Javie, jednak umożliwia ono również tworzenie programów w innych
językach. Ponadto (oprócz NetBeans Mobility Pack i NetBeans Profiler) dostępna jest duża ilość
modułów rozszerzających jego możliwości. NetBeans IDE jest produktem dostępnym za darmo
oraz bez żadnych ograniczeń co do jego używania.

Dostępna jest również NetBeans Platform - jest to modułowa i łatwo rozszerzalna baza, służąca
jako podstawa do tworzenia dużych aplikacji typu "desktop". Oprócz tego niezależni dostawcy
oprogramowania dostarczają różnego typu wtyczki i rozszerzenia, które łatwo integrują się z
NetBeans Platform i mogą być użyte do tworzenia własnych narzędzi i rozwiązań.

Wszystkie produkty NetBeans są tworzone jako "open source" i dostępne są za darmo zarówno do
komercyjnych jak i niekomercyjnych zastosowań. Kod źródłowy obu produktów dostępny jest na
licencji Common Development and Distribution License (CDDL).

background image

3

2. Tworzenie projektu - podstawy

Poniżej przedstawiono etapy tworzenia prostego projektu

1. Uruchom NetBeans IDE

2. Wybierz File->New Project->Java->JavaApplication->Next

3. Wpisz nazwę projektu w swoim katalogu roboczym i wciśnij przycisk Finish. Zwróć uwagę na

zaznaczone opcje „Set as Main Project” i „Create Main Class”.

background image

4

4. Automatycznie zostanie utworzony projekt z różnymi katalogami i plikami. Przejrzyj zawartość

wszystkich katalogów projektu.

5. Warto również przejrzeć utworzony katalog i pliki korzystając np. z Total Commandera.

background image

5

6. W edytorze otwórz plik z główną metodą „main”.

7. W miejsce komentarza „TODO code application logic here” wpisz swój kod, tj. linijkę z kodem:

System.out.println("Hello World!"); . W czasie pisania kodu korzystaj z automatycznych
podpowiedzi tak jak pokazano poniżej. Okno z dostępnymi metodami można wywołać wciskając
klawisze: Ctrl + Spacja (klawisz Ctrl i jednocześnie spacja). Warto zauważyć, że pokazuje się
również krótki opis działania metody.

background image

6

8. I tak powinno wyglądać ciało metody „main”. Nie zapomnij zapisać projektu.

9. Teraz możesz przystąpić do kompilacji projektu wybierając z menu Run->Build Main Project

lub wciskając przycisk F11.

background image

7

10. W wyniku kompilacji w okienku „Output” powinny pojawić się komunikaty tak jak poniżej.

11. Teraz możesz przystąpić do uruchomienia programu wybierając z menu Run->Run Main

Project lub wciskając klawisz F6.

12. W oknie „Output” pojawi się rezultat działania napisanego programu.

background image

8

13. Pamiętaj, że automatycznie zostanie utworzony plik o nazwie projektu i rozszerzeniu „jar”. W

tym przypadku jest to plik „HelloWorldApp.jar”. Są to zarchiwizowane wszystkie niezbędne
pliki projektu. Aplikację możesz uruchomić korzystając z linii poleceń i wpisując: java –jar
„HelloWorldApp.jar”
.

background image

9

3. Tworzenie projektu – przykład z własnym pakietem

Opracowano na podstawie materiałów z http://www.netbeans.org/kb/50/index.html.

Tworzenie Projektu

Na początku utworzymy nową bibliotekę klas Java dla klas pomocniczych, których użyjemy później. Następnie

należy utworzyć nową aplikację Java, która będzie stanowić projekt główny. Kiedy projekt MyApp będzie już

gotowy dodamy do jego classpath klasy z MyLib.

Tworzenie Nowej Biblioteki Klas Java

1. Wybierz File > New Project (Ctrl-Shift-N). W Categories wybierz Java. W Projects wybierz Java Class

Library i naciśnij Next.

2. W polu Project Name wpisz

MyLib

. Ustaw położenie projektu na dowolny katalog na twoim

komputerze. Od tego momentu będziemy odwoływać się do tego katalogu jako

NetBeans_projects

.

Uwaga: Podana ścieżka powinna wyglądać tak:

/

NetBeans_projects

/MyLib/

3. Naciśnij Finish. Projekt MyLib zostanie otwarty w oknach zarówno Projects jak i Files.

background image

10

Tworzenie Nowej Aplikacji Java

1. Wybierz File > New Project. Pod Categories, wybierz Java. Pod Projects, wybierz Java Application i

naciśnij Next.

2. W polu Project Name wpisz

MyApp

. Upewnij się, że lokalizacja projektu to

NetBeans_projects

.

3. Wprowadź

acrostic.Main

jako klasę główną.

4. Upewnij się, że pola Set as Main Project oraz Create Main Class są zaznaczone.

5. Naciśnij Finish. Projekt MyApp pojawi się w oknie Project a

Main.java

otworzy się w oknie Edytora

Kodu Źródłowego(Source Editor).

background image

11

Konfiguracja Classpath Kompilacji

1. W oknie Projects, kliknij prawym klawiszem myszy na Libraries dla projektu My App i wybierz Add

Project.

2. Przejdź do

NetBeans_projects/

i wybierz folder projektu

MyLib

. Project JAR Files pokazuje pliki

JAR, które mogą być dodane do projektu. Zauważ, że plik JAR dla MyLib jest obecny pomimo, że nie

utworzyliśmy jeszcze żadnego pliku JAR. Ten plik JAR zostanie utworzony za pierwszym i każdym

kolejnym razem gdy będziemy budować i uruchamiać projekt MyApp.

background image

12

3. Kliknij na Add Project JAR Files.

4. Rozwiń odgałęzienie Libraries. Zauważ, że plik JAR z MyLib jest dodany do classpath projektu MyApp.

Pisanie i Edytowanie Kodu Źródłowego Java

Teraz potrzebujemy utworzyć pakiet Java i dodać metody, których użyjemy przy konstruowaniu naszego

akrostychu, po czym zaimplementujemy metodę

acrostic

w klasie

Main

.

background image

13

Tworzenie Plików oraz Pakietów Klas Java

1. Kliknij prawym przyciskiem myszy na projekcie MyLib i wybierz New > Java Class. Wpisz

LibClass

jako nazwę nowej klasy, wpisz

org.me.mylib

w polu Package i kliknij Finish.

LibClass.java

zostanie otwarta w oknie Edytora Kodu Źródłowego.

2. W

LibClass.java

, przejdź do linii pomiędzy

public class LibClass { a }

i wpisz poniższy kod

metody:

public static String acrostic(String[] args) {

StringBuffer b = new StringBuffer();

for (int i = 0; i < args.length; i++) {

if (args[i].length() > i) {

b.append(args[i].charAt(i));

} else {

b.append('?');

}

}

return b.toString();

}

3. Jeśli wklejony kod jest niepoprawnie sformatowany, naciśnij Alt+Shift+F aby przeformatować cały plik.

4. Naciśnij Carl+S, żeby zapisać utworzony plik.

background image

14

Edytowanie Pliku Java

1. Wybierz zakładkę

Main.java

w Edytorze Kodu Źródłowego. Jeśli nie jest już otwarta, rozwiń MyApp >

acrostics w oknie Projects i kliknij dwa razy

Main.java

.

2. Usuń z kodu komentarz

// TODO code application logic here

w metodzie

main

i wpisz:

String result = Li

3. Naciśnij Ctrl-Spacja żeby otworzyć okno automatycznego uzupełniania kodu. IDE oferuje uzupełnianie

kodu dla wszystkich klas znajdujących się w classpath kompilacji projektu. Wybierz

LibClass

(org.me.mylib)

i naciśnij Enter. IDE uzupełnia resztę nazwy klasy ale również automatycznie tworzy

deklarację import dla klasy.

Uwaga: IDE wyświetla również drugie okno nad oknem uzupełniania kodu zwierające Javadoc dla

wybranej klasy lub pakietu. Z uwagi na to, że dla większości pakietów Javadoc nie ma, dopóki nie

podświetli się jakiejś klasy, w oknie będzie widoczna informacja o tym, że "Nie można znaleźć

Javadoc".

4. W głównej klasie wstaw kropkę po

LibClass

. Okno uzupełniania kodu pojawi się ponownie. Wybierz

metodę

acrostic(String[]args)

i naciśnij Enter. IDE wstawia metodę

acrostic

i polazuje jej

parametry w dymku podpowiedzi.

5. Naciśnij jeszcze raz Ctrl-Spacja żeby wyświetlić okno uzupełniania kodu, wybierz

args

i naciśnij Enter.

6. Wstaw średnik. Zauważ, że jest on wstawiany po prawym nawiasie pomimo, iż punkt w którym został

wstawiony jest jeszcze wewnątrz nawiasów. Ostatecznie linijka kodu będzie wyglądać tak:

String result = LibClass.acrostic(args);

7. Naciśnij Enter, żeby przejść do nowej linii. Wpisz

sout

i naciśnij Tab. Skrót

sout

zostaje

automatycznie zamieniony na

System.out.println("");

z kursorem między cudzysłowami. Wpisz

Result =

między cudzysłowami i

+ result

za drugim cudzysłowem. W rezultacie powinniśmy

otrzymać:

System.out.println("Result = " + result);

background image

15

8. Naciśnij Ctrl-S żeby zapisać zmiany.

Kompilacja i Uruchamianie Projektu

W tym momencie należy ustawić argumenty uruchomieniowe aplikacji i klasy main, żeby można było projekt

uruchomić. Zwrócimy również uwagę na narzędzia czyszczące kod oraz budowania i generowania dokumentacji

Javadoc.

Ustawianie Argumentów Uruchomieniowych

1. Kliknij prawym klawiszem na MyApp w oknie projektu, wybierz Properties i kliknij na Run po lewej

stronie okna dialogowego. Zauważ, że klasa główna jest już ustawiona jako

acrostic.Main

.

2. Wpisz

However we all feel zealous

w polu Arguments i kliknij OK.

Uruchamianie Głównego Projektu

1. Wybierz Run > Run Main Project (F6) z menu Run. Kliknij dwukrotnie na oknie Output, żeby je

zmaksymalizować by móc widzieć całość wyjścia. Zauważ, że Ant najpierw tworzy

MyLib.jar

, a

dopiero później przy jego użyciu kompiluje MyApp. Na końcu wypisuje wyjście programu,

Result =

Hello

(jest to akrostych wyrażenia podanego programowi jako argument uruchomieniowy).

background image

16

2. Wybierz okno Files i rozwiń folder projektu MyApp. Zbudowane pliki znajdują się w folderze

build

.

3. Naciśnij F6, żeby uruchomić program. Nie ma potrzeby kompilować niczego od nowa, a program

zostaje uruchomiony.

Czyszczenie i Budowanie Projektu

1. Wybierz Build > Clean and Build Main Project (Shift-F11). Podczas tego procesu oba projekty, MyLib i

MyApp, są czyszczone i ponownie budowane.

2. Kliknij prawym przyciskiem myszy na projekt MyLib w oknie Projects i wybierz Clean Project. Tym

razem wyczyszczony zostanie jedynie projekt MyLib.

Budowanie Pojedynczego Projektu

1. Kliknij prawym przyciskiem na MyLib w oknie Projects.

2. Wybierz z menu kontekstowego Build.

Generowanie Javadoc

1. Wybierz projekt MyApp.

2. W głównym menu IDE kliknij Run > Generate Javadoc(MyApp).

IDE wyświetli wyjście Javadoc w oknie Output, a przeglądarka internetowa zostanie otwarta

wyświetlając Javadoc.

Testowanie i Debugowanie Projektu

Teraz używając JUnit utworzymy i uruchomimy dla naszego projektu test, a następnie uruchomimy go w

debugerze IDE, żeby sprawdzić czy program nie zawiera błędów.

Tworzenie Testów JUnit

1. Kliknij prawym przyciskiem na

LibClass.java

w oknie Projects i wybierz Tools >Create JUnit Tests

(Ctrl-Shift-U). Kliknij OK aby uruchomić test z ustawieniami domyślnymi. IDE tworzy pakiet

org.me.mylib

oraz plik

LibClassTest.java

w pakiecie Test Packages.

background image

17

2. W

LibClassTest.java

, usuń ciało metody

testAcrostic

i wpisz albo wklej w to miejsce poniższy

kod:

System.err.println("Running testAcrostic...");

String result = LibClass.acrostic(new String[]

{"fnord", "polly", "tropism"});

assertEquals("Correct value", "foo", result);

3. Zapisz plik naciskając Ctrl-S.

Uruchamianie Testów JUnit

1. Zaznacz projektu MyLib i wybierz z menu IDE: Run > Test (MyLib) (Alt+F6). W oknie Output pojawia

się zakładka

MyLib (test)

. Testy JUnit są kompilowane i uruchamiane. Dane na wyjściu testu JUnit

wskazują, że program przeszedł go pomyślnie.

2. Zamiast testować od razu cały projekt, można również przeprowadzić test oddzielnie dla pojedynczego

pliku. Wybierz zakładkę

LibClass.java

w Edytorze Kodu Źródłowego i z menu IDE wybierz: Run >

Test File.

Debugowanie Projektu

1. W pliku

LibClass.java

, przejdź do metody

acrostic

i ustaw kursor gdziekolwiek w kodzie

b.append(args[i].charAt(i));

. Naciśnij teraz Carl+F8 aby ustawić w tym miejscu breakpoint.

2. Wybierz Debug > Debug Main Project (Ctrl+F5). IDE otwiera okna debugowania i uruchamia program

do chwili dojścia do ustawionego wcześniej breakpointa.

3. Wybierz okno Variables i rozwiń

args

. Tablica łańcuchów literowych zawiera tekst wprowadzony

wcześniej jako argument uruchomieniowy programu.

4. Kliknij Step Into (F7) w pasku narzędziowym żeby program został wykonany do końca i zobacz jak

tworzony jest akrostych.

W momencie kiedy program kończy działanie, okna debugera zamykają się.

background image

18

3. Tworzenie GUI – dodawanie 2. liczb

Tworzenie nowej aplikacji

1. Wybierz File > New Project. Pod Categories wybierz Java. Pod Projects wybierz Java Application I

naciśnij Next.

2. W polu Project Name wpisz NumberAddiction. Upewnij się, że lokalizacja projektu to NetBeans_projects

w katalogu z numerem twojej grupy.

3. Upewnij się, że pole Set as Main Project jest zaznaczone. Odznacz pole Create Main Class jeśli jest

zaznaczone.

4. Naciśnij Finish.

Tworzenie interfejsu użytkownika

1. W oknie Projects, kliknij prawym przyciskiem myszy na NumberAddiction, wybierz New>JFrame Form.

2. Jako class name wpisz NumberAdditionUI.

3. Jako package wpisz my.numberaddition.

4. Naciśnij Finisz.

background image

19

Dodawanie komponentów

Dodamy teraz do naszej aplikacji kilka komponentów z JPanel(Panel). Będą to trzy etykiety, trzy pola

tekstowe i trzy przyciski.

Jeśli nie widzisz okna Palette w prawym górnym rogu wybierz Windows > Palette.

1. Rozpocznij od zaznaczenia Panel (JPanel) z Palette. Następnie przeciągnij je na formę(JFrame).

2. JPanel jest zaznaczony w oknie Properties kliknij w napis No Border obok napisu Border aby wyświetlić

okno właściwości formy.

3. W oknie Border wybierz z listy TitledBorder I wpisz Number Addition w polu Title. Kliknij OK aby

zapisać zmiany i zamknąć okno.

4. Zobaczysz teraz pustą formę (JFrame) z tytułem “Number Addition”

5. Dodaj teraz trzy etykiety (JLabels), trzy pola tekstowe (JTextFields) I trzy przyciski (JButtons) i umieść

je tak jak na obrazku poniżej.

background image

20

Zmiana nazw komponentów.

Zmienimy teraz tekst wyświetlany na dodanych elementach

1. Kliknij dwukrotnie na jLabel1 i zmień tekst na First Number.

2. Kliknij dwukrotnie na jLabel2 i zmień tekst na Second Number.

3. Kliknij dwukrotnie na jLabel1 i zmień tekst na Result.

4. Kliknij dwukrotnie na jTextField1 i usuń przykładowy tekst.

5. Kliknij dwukrotnie na jButton1 i zmien tekst na Clear.

6. Kliknij dwukrotnie na jButton2 i zmien tekst na Add.

7. Kliknij dwukrotnie na jButton3 i zmien tekst na Exit.

Ostatecznie GUI powinno wyglądać następująco.

background image

21

Jeśli po dwukrotnym kliknięciu otworzy się okno kodu źródłowego należy kliknąć pole Design znajdujący się

po lewej stronie u góry.

Dodawanie funkcjonalności

W naszej aplikacji dodamy teraz funkcjonalność do przycisków Add, Clear i Exit. Pola jTextField1 i

TextField2 zostaną użyte do wpisania danych przez użytkownika a pole jTextField3 jaki miejsce, gdzie

zostanie wypisany wynik działania programu.

Przycisk Exit

Musimy dodać funkcje obsługi wyjątków (event handler) do przycisku Exit, reagującą na wystąpienie

zdarzenia związanego z tym przyciskiem. W naszym przypadku chcemy wiedzieć kiedy przycisk został

wciśnięty zarówno przez mysz jak i przez klawiaturę. Musimy użyć funkcji ActionListener w odpowiedzi

na zdarzenie ActionEvent.

1.

Kliknij prawym przyciskiem na przycisk Exit. Z menu wybierz Events > Action > ActionPerformed.

Zauważ, że menu zawiera dużo więcej zdarzeń na które można zareagować. Kiedy wybierzesz

actionPerformed IDE automatycznie doda ActionListener do przycisku Exit i wygeneruje funkcję

obsługi zdarzenia.

2.

IDE otworzy okno kodu źródłowego I umieści kursor w miejscu, gdzie powinieneś umieścić kod

obsługujący zdarzenie. Kod źródłowy powinien wyglądać następująco:

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {

//TODO: Add your handling code here:

}

background image

22

3.

Dodamy teraz kod, który spowoduje poprawne działanie przycisku Exit. Należy wpisać System.exit(0);

w miejsce linie TODO Add your handling code here:. Kod źródłowy powinien wyglądać następująco:

Przycisk Clear

1. Kliknij zakładkę Design nad oknem kodu źródłowego, aby powrócić do okna tworzenia aplikacji

graficznej.

2. Kliknij prawym przyciskiem na przycisk Clear. Z menu wybierz Events > Action > ActionPerformed.

3. Aby przycisk Clear wczyścił cały tekst znajdujący się w polu jTextFields należy dodać następujący kod

źródłowy:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){

jTextField1.setText("");

jTextField2.setText("");

jTextField3.setText("");

}

Powyższy kod usunie tekst ze wszystkich trzech pól JTextFields.

Przycisk Add

Naciśnięcie tego przycisku powinno spowodować następujące czynności:

1. Odczytanie danych z pól

jTextField1

i

jTextField2

oraz konwersja typu String na float,

2. dodanie dwóch liczb,

3. konwersje wyniku na typ String i umieszczenie go w polu

jTextField3

.

Aby to zrobić należy:

1. Kliknij zakładkę Design nad oknem kodu źródłowego, aby powrócić do okna tworzenia aplikacji

graficznej.

2. Kliknij prawym przyciskiem na przycisk Clear. Z menu wybierz Events > Action > ActionPerformed

background image

23

3. Nalezy teraz dodać poniższy kod źródłowy:

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt){

// First we define float variables.

float num1, num2, result;

// We have to parse the text to a type float.

num1 = Float.parseFloat(jTextField1.getText());

num2 = Float.parseFloat(jTextField2.getText());

// Now we can perform the addition.

result = num1+num2;

// We will now pass the value of result to jTextField3.

// At the same time, we are going to

// change the value of result from a float to a string.

jTextField3.setText(String.valueOf(result));

}

Nasz program jest już skończony. Możemy teraz go skompilować i uruchomić.

Uruchamianie programu

1. Wybierz Run > Build Main Project lub F11

2. Kiedy kompilacja się zakńczy wybierz Run > Run Main Project lub F6.

3. Jeśli pojawi się okno z komunikatem “Your Project NumberAddition does not have a main class set”

nalezy zaznaczyć my.NumberAddition.NumberAdditionUI jako główną klasę i kliknąć OK

4. Twój uruchomiony program powinien wyglądać podobnie jak na obrazku poniżej.

Sprawdź teraz jego działanie dla kilku liczb.


Wyszukiwarka

Podobne podstrony:
Sprawozdanie Java Lab3 Karol Leszczyński gr13
Java Media FreamWork
lab3
java 2
lab3 kalorymetria
Projekt java
JAVA tablice
Instrukcja Lab3
Inzynieria oprogramowania w ujeciu obiektowym UML wzorce projektowe i Java iowuje
Java Przewodnik dla poczatkujacych Wydanie V javpp5
lab3 6
zasady grupy, java, javascript, oprogramowanie biurowe, programowanie, programowanie 2, UTK, systemy
lab3
sprawko z lab3 z auto by pawelekm
Lab3 zadanie 2 schemat organizacyjny
praktyczny kurs java NX2M5DXARLEHY6NHXOS5FJHKLI6ACRLQQSDRS2Q
notatki java 08
Lab3 KWW KT

więcej podobnych podstron