JP SS 6 BlueJ

background image

1

Języki Programowania

Środowisko BlueJ

2

http://www.bluej.org

background image

2

3

Zaczynamy pracę z BlueJ

Klikamy dwukrotnie
na ikonę BlueJ

Otwieramy nowy
projekt

New Project


Pojawia się wiele
predefiniowanych
projektów (klas)

Wybieramy nazwę

przyklady

4

BlueJ, pierwsza klasa

nowa klasa

nazwa

Hello

powstała nowa klasa

Hello.java

prawym przyciskiem
myszy wywołujemy
menu kontekstowe,
z którego możemy
np. dokonać edycji

background image

3

5

Edycja i kompilacja

Edytor podaje gotowy kod
źródłowy wcześniej
zapisanej klasy

Hello

Tworząc nową klasę trzeba
ten kod wpisać, a potem
można go modyfikować -

edytować

Gotowy kod można
poddać tłumaczeniu -

kompilacji

6

Tworzenie obiektów

Klasa

Hello

w oknie

BlueJ oznacza tylko, że
klasa ta została
poprawnie skompilowana,
na razie jednak nie można
z niej korzystać w
praktyce

U dołu okna widać, że
wcześniej zostały już
utworzone dwa obiekty
z klasy

Hello

o

nazwach

hello1

i

hello2

Tworząc kolejny obiekt z danej klasy należy
mu nadać unikatową nazwę, w tym przypadku
np.

hello3

. Konstruktor obiektów sam

podpowiada kolejne numery obiektów

background image

4

7

Obiekty

– sedno programowania

Obiekty

są podstawą idei

progra-

mowania obiektowego

.


W

BlueJ

wszystkie własności

obiektów można przywołać przez
menu kontekstowe

Można przy tym obejrzeć
wewnętrzne właściwości obiektów
(

Inspect

) lub usunąć obiekt

(

Remove

)

8

Figury jako obiekty

Otwieramy zdefiniowaną
przykładową klasę

shapes

i tworzymy obiekty

klas

Circle
Square
Triangle


Możemy nadać własne
nazwy obiektów, np.:

kolo
kwadrat
trojkat

Lub zaakceptować
proponowane przez

BlueJ

nazewnictwo typu:

circle1
circle2
square1

Uwaga:

powszechnie przyjęta jest konwencja, że

nazwy

klas

zaczynają się od dużej, a nazwy

obiektów

od małej litery

background image

5

9

Dlaczego nie widać kółka?

Dokonujemy

inspekcji

obiektu

kolo

wybierając

z menu kontekstowego
opcję

Inspect

10

isVisible = false

Otwiera się okno inspektora

Parametr

isVisible

ma wartość

false


Należy go zmienić,
ale w jaki sposób?

background image

6

11

Metoda

makeVisible()

W menu kontekstowym obiektu
kolo znajdujemy

metodę

makeVisible()

Klikamy na tę opcję i ....
Koło pojawia się w oknie konsoli

BlueJ

12

Badanie metod

W podobny sposób powodujemy pojawienie
się obiektów

kwadrat

i

trojkat

Następnie wywołujemy kolejno metody:

obiekt

kwadrat

metoda

moveRight()

obiekt

kolo

metoda

moveDown()

obiekt

kwadrat

metoda

moveRight()

obiekt

kwadrat

metoda

moveUp()

background image

7

13

Metody z argumentami

Zmienimy teraz wielkość koła wywołując
związaną z nim metodę

changeSize(int)


Otwiera się okno dialogowe, w które
wprowadzamy nową wartość średnicy
koła w pikselach

Typ parametru

int

oznacza, że jest on

liczbą całkowitą.
Wpisujemy wartość 100 i konsola
pokazuje większe koło o średnicy 100
pikseli

14

Kolejne obiekty

tworzymy kolejne dwa obiekty klasy

Circle

kolo2

kolo3

i przesuwamy jedno z nich o 100 pikseli w prawo a
drugie o 50 pikseli w dół, po czym uwidaczniamy je
metodą

makeVisible()

Na ekranie widzimy jednak tylko dwa niebieskie
koła. Gdzie jest trzecie koło?

Duże niebieskie koło (obiekt

kolo

) przesłania inne

niebieskie koło (obiekt

kolo3

)

Aby uwidocznić obiekt

kolo3

w jego menu

szukamy metody

changeColor(

string

)

background image

8

15

Argumenty typu

string

Argumentem metody

changeColor(String)

jest łańcuch

znaków. W tym przypadku

BlueJ

pozwala

wybrać jeden z 6 kolorów. Wybieramy np.

”yellow”

Na konsoli pojawia się niewidoczne
dotąd żółte koło (obiekt

kolo3

)

16

Powtórna inspekcja

Wywołujemy inspektora obiektu

kolo

i widzimy, że ma on nowe

wartości pól:

diameter

xPosition

yPosition

isVisible

Pola opisujące obiekty mają najczęściej jeden z trzech

podstawowych typów:

int

String

boolean

background image

9

17

Malarz

– program Java

Dotąd wszystkie operacje na klasach, obiektach i ich parametrach

(wartościach pól) wykonywaliśmy interaktywnie, przy pomocy myszy

i odpowiednich opcji w menu. Czy można te operacje

zaprogramować w języku Java?

W jaki sposób tworzyć obiekty i nadawać im nazwy używając zapisu

w języku Java, a w szczególności jak

Utworzyć obiekt klasy

Circle

i nadać mu nazwę, np.

kolo2

Utworzyć obiekt klasy

Square

i nadać mu nazwę, np.

kwadrat

Jak zaprogramować takie czynności?

Stworzymy w tym celu nową klasę i nazwiemy ją

Malarz

18

Nowa klasa

– Malarz

Otwieramy w

BlueJ

projekt

shapes

i tworzymy nową klasę

o nazwie

Malarz

Następnie zaczynamy edytować
nową klasę

background image

10

19

Klasa Malarz

Po wywołaniu edycji nowej klasy

Malarz

BlueJ

otwiera okno

klasy z tzw. szkieletem klasy.

Kasujemy wszystko z wyjątkiem
definicji


class

Malarz

Oraz nawiasów klamrowych


{


}

Nawiasy obejmują przyszłą treść
tworzonej klasy

20

Co ma zawierać klasa Malarz

zakładamy, że klasa

Malarz

, a więc i obiekty utworzone

z tej klasy powinny:

tworzyć (rysować) obiekty w postaci kół, prostokątów i trójkątów i
nadawać im nazwy


zawierać metodę, np.

rysujDom( )

, która:

utworzy i umieści w odpowiednich miejscach obiekty składowe
tworzące rysunek domu

będzie je mogła powiększać lub zmniejszać

uwidoczni na konsoli poszczególne obiekty

będzie mogła zmieniać barwy elementów rysunku domu

background image

11

21

Tworzenie obiektów

Tworzenie (konstrukcja) obiektów składa się z dwóch kroków:

rejestruje się nazwę obiektu

tworzy się nowy obiekt i zapamiętuje z nadana wcześniej nazwą

zarejestruj nazwę

slonce

dla

jeszcze nieutworzonego obiektu

klasy

Circle


utwórz nowy obiekt klasy

Circle

i nadaj mu nazwę

slonce

Uwaga:

Java rozróżnia wielkość liter, dlatego:

CIRCLE ≠ Circle ≠ circle

Circle slonce

;




slonce = new Circle( );

22

Rejestracja przy tworzeniu

Rejestrację i utworzenie (konstrukcję) obiektu można również
wykonać w jednym kroku. Aby w ten sposób utworzyć nowy obiekt
klasy

Circle

i nadać mu nazwę

slonce

należy napisać:

Circle slonce = new Circle( );

Rejestruj nazwę obiektu

slonce

, który należy do

klasy

Circle

Utwórz nowy obiekt klasy

Circle

background image

12

23

Klasa Malarz z obiektami

Klasa może być już
kompilowana

Można tworzyć obiekty




W czasie kompilacji nie
wystąpiły żadne błędy

24

Malarz

prymitywista

W menu kontekstowym klasy

Malarz

wybieramy opcję

new Malarz(),

tworzymy

nowy obiekt tej klasy i
nadajemy mu nazwę

prymitywista


Następnie wchodzimy do
inspekcji obiektu

prymitywista

background image

13

25

Inspekcja obiektu

prymitywista

Strzałki oznaczają odwołanie do obiektu <object reference>

Podwójne kliknięcie na
link wywołuje okno
inspektora
wskazywanego obiektu

Inspektor wskazuje, że prymitywista ma
pola o nazwach

slonce

,

sciana

,

okno

i

dach

Nie są to liczby, ale obiekty odpowiednio
klas:

Circle

,

Square

,

Square

i

Triangle

26

Malarz może już malować

Aby obiekt klasy Malarz mógł malować należy
klasę wyposażyć w metodę malowania.

Metody języka Java składają się z nagłówka i
ciała

Nagłówek

zawiera:

• typ wyniku – u nas brak –

void

• nazwę metody –

rysujDom

• listę parametrów – u nas pusta

( )

Ciało

zawiera opis czynności, które wykonuje

metoda:

slonce.makeVisible();

slonce.changeColor(

”yellow”);

slonce.moveHorizontal(100);

• itd...

background image

14

27

Nagłówek metody

Nagłówek metody Javy

void

rysujDom( )

;

Typ wyniku wyprodukowa-
nego (obliczonego) przez
metodę. Jeśli metoda nie
zwraca żadnego wyniku
używa się słowa

void

Nazwa metody

zgodnie z konwencją
zaczyna się od małej
litery

Lista parametrów metody,
nawiasów nie można
pominąć, nawet gdy lista
jest pusta

Przykłady nagłówków innych metod

void

rysujAkwarium( )

;

void

makeVisible( )

;

void

changeColor(

String

kolor

)

;

void

moveHorizontal(

int

distance

)

;

28

Ciało metody

Ciało metody

, nazywane też blokiem zawiera następujące

elementy:

1.

Klamrę otwierającą blok

{

2.

Ciąg instrukcji, np.

deklaracje zmiennych

instrukcje przypisania

pętle

wywołania metod np.

slonce.makeVisible( );

....

3.

Klamrę zamykającą blok

}

background image

15

29

Uruchamiamy

prymitywistę

wschód słońca
na kempingu ?

Tworzymy obiekt klasy

Malarz

i

nazywamy go

prymitywista

.

W menu kontekstowym obiektu

prymitywista

znajdujemy

metodę

void rysujDom()

i widzimy ....

Niezupełnie o to nam chodziło, ale na początek i tak nieźle ...

30

Zadanie domowe

Zmodyfikować klasę

Malarz

w taki sposób,

by obiekt tej klasy dysponował metodą wygenerowania
załączonego obrazu


Wyszukiwarka

Podobne podstrony:
JP SS 4 start Java
JP SS 10 Interfejs graficzny
JP SS 5 podstawy Java (2)
JP SS 7 Klasy i obiekty
JP SS 6 Klasy i obiekty
JP SS 7 Typy i operacje
JP SS 8 Instrukcje, pętle
JP SS 4 wprowadzenie Java
JP SS 3 jezyk C klasy id 228754 Nieznany
JP SS 2 algorytmy i podstawy programowania
JP SS 9 Tablice IO wyjątki
JP SS 3 jezyk C
JP SS 5 podstawy Java
JP SS 3 jezyk C
JP SS 1 podstawy JP
JP SS 2 algorytmy id 228753 Nieznany
JP SS 5 podstawy Java
JP SS 4 start Java

więcej podobnych podstron