Java. Æwiczenia praktyczne

Podobne dokumenty
JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

C++. Æwiczenia zaawansowane

Java. Æwiczenia praktyczne. Wydanie II

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Podstawy Programowania C++

C#. Æwiczenia. Wydanie II

1 Podstawy c++ w pigułce.

Smarty PHP. Leksykon kieszonkowy

C#. Æwiczenia IDZ DO KATALOG KSI EK TWÓJ KOSZYK CENNIK I INFORMACJE CZYTELNIA PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wprowadzenie do języka Java

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Java. Æwiczenia zaawansowane

MATLAB. Æwiczenia IDZ DO KATALOG KSI EK TWÓJ KOSZYK CENNIK I INFORMACJE CZYTELNIA PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG ONLINE

Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Java Podstawy. Michał Bereta

Powtórka algorytmów. Wprowadzenie do języka Java.

JavaScript. Æwiczenia praktyczne

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

1 Podstawy c++ w pigułce.

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Typy wyliczeniowe Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

Powtórka algorytmów. Wprowadzenie do języka Java.

2 Przygotował: mgr inż. Maciej Lasota

1 Powtórzenie wiadomości

Informatyka Europejczyka. Zeszyt æwiczeñ dla szko³y podstawowej. Czêœæ II

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

MySQL. Darmowa baza danych. Æwiczenia praktyczne

Podstawy i języki programowania

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

Wykład 2 Składnia języka C# (cz. 1)

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Zadeklarowanie tablicy przypomina analogiczną operację dla zwykłych (skalarnych) zmiennych. Może zatem wyglądać na przykład tak:

Rok akademicki: 2012/2013 Kod: JFM s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Struktury, unie, formatowanie, wskaźniki

Programowanie obiektowe

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Programowanie obiektowe

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Matematyka z komputerem dla gimnazjum

KOTLIN. Język programowania dla Androida

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Programowanie w języku Python. Grażyna Koba

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Podstawowe części projektu w Javie

Wykład 8: klasy cz. 4

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Podstawy programowania skrót z wykładów:

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Pętle. Dodał Administrator niedziela, 14 marzec :27

AutoCAD Pierwsze kroki

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Typy danych, zmienne i tablice. Tomasz Borzyszkowski

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Języki programowania obiektowego Nieobiektowe elementy języka C++

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Podstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Programowanie obiektowe zastosowanie języka Java SE

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek

Programowanie strukturalne i obiektowe

Wykład 5: Klasy cz. 3

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Przedrostkowa i przyrostkowa inkrementacja i dekrementacja

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Lab 9 Podstawy Programowania

Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2]

Powtórka algorytmów. Wprowadzenie do języka Java.

Elementy języków programowania

Spis treści. 1 Java T M

Programowanie (C++) NI 5

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

C++ wprowadzanie zmiennych

Podstawy programowania w C++

Transkrypt:

IDZ DO PRZYK ADOWY ROZDZIA SPIS TREŒCI KATALOG KSI EK KATALOG ONLINE Java. Æwiczenia praktyczne Autor: Marcin Lis ISBN: 83-7197-723-9 Format: B5, stron: 166 ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK DODAJ DO KOSZYKA CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOŒCIACH ZAMÓW CENNIK Chyba ka dy, kto interesujê siê Internetem, s³ysza³ o Javie. Ten, w koñcu stosunkowo m³ody, jêzyk programowania wyj¹tkowo szybko zdoby³ sobie bardzo du ¹ popularnoœæ i akceptacjê ze strony programistów na ca³ym œwiecie. I choæ jego przysz³oœæ wcale nie jest jeszcze przes¹dzona, wiele wskazuje na to, e Java stanie siê jednak dominuj¹c¹ technologi¹ ju w niedalekiej przysz³oœci. Skoro tak, warto poznaæ j¹ ju teraz. Wiele osób kojarzy Javê tylko z apletami zawartymi na stronach WWW. To jednak tylko czêœæ zastosowañ. Tak naprawdê to doskona³y, obiektowy jêzyk programowania, nadaj¹cy siê do ró norodnych zastosowañ. Autor zapoznaje czytelnika z podstawami jêzyka przez seriê kilkudziesiêciu æwiczeñ. Kurs ten jednak pozwoli zrozumieæ istotê jêzyka, a zagadnienia zaawansowane stan¹ siê bardziej czytelne, gdy przysz³y programista siêgnie po kolejne ksi¹ ki. CZYTELNIA FRAGMENTY KSI EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl

Wstęp... 7 Przyszłość Javy... 8 O książce... 8 Narzędzia... 9 Przykłady... 9 Część I Język programowania... 11 Rozdział 1. Krótkie wprowadzanie...13 Zaczynamy... 13 B-kod i maszyna wirtualna... 14 Java a C++... 15 Obiektowy język programowania... 15 Struktura programu... 16 Rozdział 2. Zmienne, operatory i instrukcje... 17 Zmienne... 17 Typy podstawowe...17 Deklarowanie zmiennych typów podstawowych...18 Typy odnośnikowe...20 Deklarowanie zmiennych typów odnośnikowych...21 Operatory... 24 Operatory arytmetyczne...24 Operatory bitowe...28 Priorytet operatorów...31 Instrukcje... 31 Instrukcja warunkowa if...else...31 Instrukcja switch...35

4 Java. Ćwiczenia praktyczne Pętla for...37 Pętla while...40 Rozdział 3. Obiekty i klasy...43 Metody... 44 Konstruktory... 50 Specyfikatory dostępu... 52 Dziedziczenie... 55 Rozdział 4. Wyjątki... 57 Błędy w programach... 57 Instrukcja try...catch... 60 Instrukcja throws... 62 Hierarchia wyjątków... 63 Część II Aplety...65 Rozdział 5. Rysowanie... 67 Aplikacja a Aplet... 67 Pierwszy aplet... 67 Jak to działa?... 69 Czcionki... 70 Rysowanie grafiki... 73 Kolory... 78 Wyświetlanie plików graficznych... 80 Rozdział 6. Dźwięki...85 Rozdział 7. Animacje...89 Pływający napis... 89 Pływający napis z buforowaniem... 93 Zegar cyfrowy... 94 Animacja poklatkowa... 96 Zegar analogowy... 98 Rozdział 8. Interakcja z użytkownikiem...103 Obsługa myszy... 103 Rysowanie figur (I)... 106 Rysowanie Figur (II)... 111 Rysowanie Figur (III)... 112

Spis treści 5 Część III Aplikacje... 117 Rozdział 9. Okna i menu... 119 Rozdział 10. Grafika i komponenty...133 Klasa Button... 134 Klasa TextField... 136 Klasa TextArea... 139 Klasa Label... 142 Klasa Checkbox... 144 Klasa List... 146 Rozdział 11. Operacje wejścia-wyjścia...151 Wczytywanie danych z klawiatury... 151 Operacje na plikach... 156 Zakończenie...165

Zmienna jest to miejsce, w którym możemy przechowywać jakieś dane np. liczby czy ciągi znaków. Każda zmienna musi mieć swoją nazwę, która ją jednoznacznie identyfikuje. Każda zmienna ma także swój typ, który informuje o tym, jakiego rodzaju dane można w niej przechowywać. Np. zmienna typu 28 przechowuje liczby całkowite, a zmienna typu 03+8 liczby zmiennoprzecinkowe. Typy w Javie dzielą się na dwa rodzaje: typy podstawowe (ang. primitive types) oraz typy odnośnikowe (ang. reference types). Typy podstawowe dzielą się na typy arytmetyczne oraz typ boolean. Zmienna typu,3 3/+2 może przyjmować tylko dwie wartości mianowicie 869/ i 0+7/. $69/ oznacza logiczną prawdę, natomiast 0+7/ logiczny fałsz. Typy arytmetyczne dzielą się z kolei na 84 -+o3;83-,3;/ (ang. integral type) oraz 84/22346/-23;/ (ang. floating-point type). Rodzina typów całkowitoliczbowych składa się z pięciu typów:,8/, 7368, 28, 321, -+6.

18 Część I Język programowania W przeciwieństwie do C++ dokładnie określono sposób reprezentacji tych danych. Niezależnie więc od tego, na jakim systemie pracujemy (16-, 32- czy 64-bitowym), dokładnie wiadomo na ilu bitach zapisana jest zmienna danego typu. Wiadomo też dokładnie z jakiego zakresu wartości może ona przyjmować. Nie ma wiec dowolności, która w przypadku C mogła prowadzić do sporych trudności przy przenoszeniu programów pomiędzy różnymi platformami. Zakresy poszczególnych typów danych oraz ilość bitów niezbędna do zapisanie zmiennych danego typu prezentuje tabela 2.1. Tabela 2.1. Zakresy typów arytmetycznych w Javie Typ Liczba bitów Liczba bajtów Zakres,8/ 8 1 od 128 do 127 7368 16 2 od 32 768 do 32 767 28 32 4 od 2 147 483 648 do 2 147 483 647 321 64 8 od 9 223 372 036 854 775 808 do 9 223 372 036 854 775 807 Typ -+6 służy do reprezentacji znaków, przy czym w Javie jest on 16-bitowy i zawiera znaki Unicode. (Unicode to standard pozwalający na zapisanie znaków występujących większości języków świata). Typy zmiennoprzecinkowe występują tylko w dwóch odmianach: 03+8 (pojedynczej precyzji),.39,/ (podwójnej precyzji). Zakres oraz liczbę bitów i bajtów potrzebnych do zapisu tych zmiennych prezentuje tabela 2.2. Tabela 2.2. Zakresy dla typów zmiennoprzecinkowych w Javie Typ Liczba bitów Liczba bajtów Zakres 03+8 32 4 od 3,4e38 do 3,4e38.39,/ 64 8 od 1,8e308 do 1,8e308 Format danych 03+8 i.39,/ jest zgodny z ze specyfikacja standardu ANSI/IEEE 754. Zapis 3,4e48 oznacza 3,4 razy 10 do potęgi 38. Aby móc użyć jakiejś zmiennej w programie, wpierw trzeba ją zadeklarować, tzn. podać jej typ oraz nazwę. Ogólna deklaracja wygląda w sposób następujący: 84)/22/2+;+)/22/ Po takim zadeklarowaniu zmienna jest już gotowa do użycia, tzn. możemy jej przypisywać różne wartości, bądź też wykonywać na niej różne operacje np. dodawanie.

Rozdział 2. Zmienne, operatory i instrukcje 19 Ćwiczenie 2.1. Rysunek 2.1. Wynik działania programu z ćwiczenia 2.1 Zadeklaruj dwie zmienne całkowite, przypisz im dowolne wartości. Wyświetl wyniki na ekranie (rysunek 2.1). 49,- -+77+2 49,-78+8-:3.+2#8621+617 284/6;7+-,+ 28.691+-,+ 4/6;7+-,+.691+-,+ #78/398462824/6;7+-,+4/6;7+-,+ #78/39846282.691+-,+.691+-,+ Instrukcja #78/39846282 pozwala wyprowadzenie ciągu znaków na ekran. Wartość zmiennej można przypisać już w trakcie deklaracji, pisząc: 84)/22/2+;+)/22/;+683 Można również zadeklarować wiele zmiennych danego typu oddzielając ich nazwy przecinkami. Część z nich może też być od razu zainicjalizowana: 84)/22/2+;+Г2+;+Г2+;+ 84)/22/2+;+;+683Г2+;+Г2+;+;+683 Zmiennej w Javie, podobnie jak w C, czy C++, ale inaczej niż w Pascalu, można deklarować w dowolnym miejscu funkcji czy metody. Ćwiczenie 2.2. Zadeklaruj i jednocześnie zainicjalizuj dwie zmienne typu całkowitego. Wynik wyświetl na ekranie. 49,- -+77+2 49,-78+8-:3.+2#8621+617

20 Część I Język programowania 284/6;7+-,+ 28.691+-,+ #78/398462824/6;7+-,+4/6;7+-,+ #78/39846282.691+-,+.691+-,+ Ćwiczenie 2.3. Zadeklaruj kilka zmiennych typu całkowitego w jednym wierszu. Kilka z nich zainicjalizuj. 49,- -+77+2 49,-78+8-:3.+2#8621+617 284/6;7+-,+Г.691+-,+ГГГ #78/398462824/6;7+-,+4/6;7+-,+ #78/39846282.691+-,+.691+-,+ #78/39846282/22+ #78/39846282/22+ #78/39846282/22+ Przy nazywaniu zmiennych obowiązują pewne zasady. Otóż nazwa taka może składać się z dużych i małych liter oraz cyfr, ale nie może się zaczynać od cyfry. Nie należy również stosować polskich znaków diakrytycznych. Nazwa zmiennej powinna także odzwierciedlać funkcję pełnioną w programie. Np. jeżeli określa ona liczbę punktów w jakimś zbiorze, to najlepiej ją nazwać -,+ 9283; lub nawet -,+ 9283;',3 6/. Mimo że tak długa nazwa może wydawać się dziwna, jednak bardzo poprawia czytelność programu oraz ułatwia jego analizę. Naprawdę warto ten sposób stosować. Przyjmuje się też, co również jest bardzo wygodne, że nazwę zmiennej rozpoczynamy małą literą, a poszczególne człony tej nazwy (wyrazy, które się na nią składają) piszemy literą wielką. Dokładnie tak jak w powyższych przykładach. Typy odnośnikowe (ang. reference types) dzielą się na trzy rodzaje: typy klasowe (class types), typy interfejsowe (interface types), typy tablicowe (array types). Interfejsami nie będziemy się zajmować. Zacznijmy od typów tablicowych. Tablice są to wektory elementów danego typu i służą do uporządkowanego przechowywania wartości tego typu. Mogą być jedno bądź wielowymiarowe. Dostęp do danego elementu tablicy jest realizowany poprzez podanie jego indeksu, czyli miejsca w tablicy w którym

Rozdział 2. Zmienne, operatory i instrukcje 21 się on znajduje. Dla tablicy jednowymiarowej będzie to po prostu kolejny numer elementu, dla tablicy dwuwymiarowej trzeba już podać numer wiersza i kolumny itd. Jeśli chcemy zatem przechować w programie 10 liczb całkowitych, najwygodniej będzie użyć w tym celu 10-elementową tablicę typu 28. Typy klasowe pozwalają na deklarowanie zmiennych obiektowych. Zajmiemy się nimi bliżej w rozdziale 3. Zmienne typów odnośnikowych deklarujemy podobnie jak w przypadku zmiennych typów podstawowych tzn. pisząc: lub Ćwiczenie 2.4. 84)/22/2+;+)/22/ 84)/22/2+;+)/22/)Г2+;+)/22/)Г2+;+)/22/) Pisząc w ten sposób zdeklarowaliśmy jednak jedynie tzw. odniesienie (ang. reference) do zmiennej obiektowej, a nie samą zmienną! Takiemu odniesieniu przypisana jest domyślnie wartość pusta (29). Czyli praktycznie nie możemy wykonywać na niej żadnej operacji. Dopiero po utworzeniu odpowiedniego obiektu w pamięci możemy powiązać go z tak zadeklarowana zmienną. Jeśli zatem napiszemy np. 28+ mamy gotową do użycia zmienną typu całkowitego. Możemy jej przypisać np. wartość 10. Żeby jednak móc skorzystać z tablicy musimy zadeklarować zmienną odnośnikową typu tablicowego, utworzyć obiekt tablicy i powiązać go ze zmienną. Dopiero wtedy będziemy mogli swobodnie odwoływać się do kolejnych elementów. Pisząc zatem: 288+,-+ zadeklarujemy odniesienie do tablicy, która będzie zawierała elementy typu 28, czyli 32-bitowe liczby całkowite. Samej tablicy jednak jeszcze wcale nie ma. Przekonamy się o tym wykonując kolejne ćwiczenia. Zadeklaruj tablicę elementów typu całkowitego. Przypisz zerowemu elementowi tablicy dowolna wartość. Spróbuj wyświetlić zawartość tego elementu na ekranie. 49,- -+77+2 49,-78+8-:3.+2#8621+617 288+,-+ 8+,-+ #78/39846282/63;///288+,-838+,-+

22 Część I Język programowania Rysunek 2.2. Błąd kompilacji. Nie zainicjowaliśmy zmiennej tablica Już przy próbie kompilacji kompilator uprzejmie poinformuje nas, że chcemy odwołać się do zmiennej, która prawdopodobnie nie została zainicjalizowana wypisując na ekran &+6+,/8+,-++238+:/,//228+/. (rysunek 2.2). Widzimy też wyraźnie, że w razie wystąpienia błędu na etapie kompilacji, otrzymujemy kilka ważnych i pomocnych informacji. Przede wszystkim jest to nazwa pliku, w którym wystąpił błąd (jest to ważne, gdyż program może składać się bardzo wielu klas, a każda z nich jest definiowana w oddzielnym pliku), numer wiersza w tym pliku oraz konkretne miejsce wystąpienia błędu. Na samym końcu kompilator podaje też całkowitą liczbę błędów.