Professional Documents
Culture Documents
www.devcastzone.com
www.devcastzone.com
Tred moduu
1. 2. 3. 4. 5. 6. 7. Skadowe jzyka Java Typy w Java Klasa String Nazewnictwo Operatory Operacja przypisania Operacja rzutowania
Tred moduu
8. Zmienne 9. Pierwsza aplikacja 10. Tablice 11. Instrukcje sterujce 12. Pakiety 13. final i static, import static
50 sw kluczowyc h
Sowa kluczowe przykady continue new switch default if synchronized do goto private this break implements protected throw super while Sowa kluczowe s zastrzeone
Alfabet
Cyfry i litery
Cyfry m. in. 0 - 9
Litery:
o o o o
alfabet acioski litery due i mae litery z innych alfabetw inne znaki (np. _ i )
Java rozrnia due i mae litery alfabetu acioskiego oraz te same litery pochodzce z rnych alfabetw
copyright BNS MEDIA
2 rodzaje komentarzy
implementacyjne (zwyke) blokowe: pomidzy /* a */ lub liniowe: pomidzy // a koocem wiersza;
/* komentarz */ /* * komentarz * w kilku linijkach */ // komentarz, koczcy sie znakiem koca wiersza
2 rodzaje komentarzy
dokumentacyjne: pomidzy /** a */
/** * @author Pan Cogito */ /** * Klasa okrelajca bilet */ public class Bilet { /** numer biletu*/ int id; /** rodzaj biletu */ String rodzaj; /** kierunek*/ boolean czyObieStrony;
copyright BNS MEDIA
/** * Oblicza cen biletu * @param cl wybrana klasa * @param km odleglosc [km] * @param zn znika * @return cena */ public double liczCene int kl, double km, int zn) {
10
Typy w Java
obiektowe
11
Typy prymitywne
8 typw zawierajcych wartoci proste boolean char byte short int long float double Typy numeryczne maj cile okrelony niezmienny rozmiar!
12
Typy cakowite
Typ Zakres danych Miejsce w pamici (bajty)
byte
short int long
-128 do 127
-32768 do 32767 -2147483648 do 2147483647 -9223372036854775808 do 9223372036854775807
1
2 4 8
13
Typy zmiennoprzecinkowe
Typ Zakres danych Miejsce w pamici (bajty)
float
double
od -3,4*1038 do 3,4*1038
od -1,8*10308 do 1,8*10308
4
8
Dodatkowo mog przyjmowad wartod + nieskooczonod oraz nieskooczonod NEGATIVE_INFINITY i POSITIVE_INFINITY "Not-a-Number" w skrcie NaN
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
14
Literay typw
Napis reprezentujcy wartod wpisan w kod programu 6 rodzajw literaw: liczby cakowite, rzeczywiste, literay logiczne, null, znakowe, napisowe
15
Literay int 0
173
0173
0x173
16
Literay long
0L 38317L 07317L 0x8867L
17
18
Typ char
Reprezentacja wszystkich znakw alfanumerycznych
19
cudzysw \
backslash (lewy ukonik) \\
nowa linia \n
backspace \b
nowa strona \f
copyright BNS MEDIA
20
typ zmienna;
21
22
Typy obiektowe
Wartociami zmiennych tego typu s referencje, (odnoniki) do obiektw lub null Referencja moe istnied samodzielnie
class Main { public static void main(String[]args) { Object object1; // Referencja samodzielna, bez inicjalizacji Object object2 = new Object(); // Referencja zainicjalizowana //System.out.println(object1.toString()); System.out.println(object2.toString()); } }
Gdyby odkomentowad powysz linijk, kompilator zgosiby ostrzeenie The local variable object1 may not have been initialized
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
23
24
25
Konstrukcja String String name = new String(abc); String name = abc; obie konstrukcje s rwnowane
26
String a konkatenacja
cigw znakowych
String word = "To"; System.out.println(word +" po" + czenie); //To poczenie
27
28
Nazewnictwo
Nazwa moe skadad si z: liter (maych lub duych); cyfr; podkrelenia _ Przykady: _name, name17, NaMe
Nazwa powinna odzwierciedlad przeznaczenie nazywanego elementu
29
Nazewnictwo
Nazwa nie moe: zaczynad si od cyfry; byd sowem kluczowym, wartoci logiczn, wartoci null
30
Nazewnictwo - przykady
KLASA rzeczownik rozpoczynajcy si od wielkiej litery Ticket, Browser, User ZMIENNE zwykle rzeczownik, mae litery iterator, price, surname STAE (final) rzeczownik, due liter, wyrazy oddzielone przez _ MESSAGE, Float.POSITIVE_INFINITY METODY przewanie czasowniki
31
Nazewnictwo - przykady
PLIKI nazwa taka sama, jak nazwa klasy publicznej (public) w nim zawartej Application.java, System.java, User.java PAKIETY rzeczownik, mae litery util, data, out
32
Operatory w Java
+ * ++ - % reszta z dzielenia liczba1 % liczba2 < <= > >=
== oznacza, e argumenty maja jednakow wartod, argument1 == argument2 albo referencje wskazuj na te same obiekty != oznacza, e argumenty maja rn wartod, argument1 != argument2 albo referencje wskazuj na rne obiekty
copyright BNS MEDIA
33
Operatory w Java
! negacja !argument
& koniunkcja bitowa, zachanna argument1 & argument2
34
Operacja przypisania
zmienna1 = zmienna2; przypisuje wartod zmiennej po prawej stronie do zmiennej umieszczonej po lewej stronie
35
int int a = b =
36
37
Operacje rzutowania
Zmienia typ wyraenia
Automatyczna konwersja typw lub wymuszona przez programist
38
39
40
b jest typu int + b jest typu float * c jest typu float k jest typu int niepoprawny!
41
42
43
Zmienne
Zaleca si, aby jednoczenie deklarowad i inicjalizowad zmienne
String MESSAGE = "Witamy w systemie zakupu biletw lotniczych";
44
Zasig zmiennych
Instrukcje zoone pomidzy {} Zmienna jest widoczna od miejsca jej deklaracji do kooca instrukcji zoonej, w ktrej si znajduje Wewntrz instrukcji zoonych mog wystpowad inne Nie wolno uywad w odniesieniu do nich takich samych identyfikatorw
45
46
Pierwsza aplikacja
public class Application { public static void main(String[] args) { System.out.println("System zakupu biletow. " + "\nWitamy i gratulujemy dobrego wyboru."); System.out.println("Zapraszamy do korzystania!"); } }
47
Wywietlanie napisw
System.out.println(napis) metoda powodujca wywietlanie w konsoli napisu napis zakooczone przejciem do nowej linii System.out.print(napis) brak przejcia do nowej linijki
48
49
50
Tablice
Struktura danych Zawiera cig elementw jednego typu Dostp do wartoci poprzez indeks
51
Tablice
Deklaracja
typ[]zmienna; typ zmienna[]; typ[][]zmienna; typ[] zmienna[]; typ zmienna[][]; String []napisy; boolean tab[]; Bilet bilety [][]; char []znaki[]; int[][] liczby;
52
Tablice - inicjalizacja
zmienna = new typ[iloscElementow]; zmienna = {element1, element2, }; zmienna = new typ[iloscWierszy][iloscKolumn]; zmienna = { {element1, element2}, {element3, element4};
53
Odwoania do elementw
Dostp do elementu tablicy zmienna[nrIndeksu] Rozmiar tablicy zmienna.length
54
Odwoania do elementw
Elementy tablicy numerujemy od zera Przy tworzeniu tablicy bez podawania jej elementw, kady element otrzymuje wartod
o o o
55
56
57
58
59
Tablica dwuwymiarowa
int m = 3; int n = 5; int matrix[][] = { {4, 8, 2, 1, 0}, {2, 6, 1, 9, 1}, {5, 7, 9, 1, 2}}; for(int i = 0; i < m; i++){ for(int j = 0; j < n; j++) { System.out.print(matrix[i][j] + " } System.out.println(); }
copyright BNS MEDIA
");
60
61
62
63
64
public class Application { public static void main(String[]args) { System.out.println("Witaj, " + "podales nastepujace dane"); int tableLength = args.length; for (int i = 0; i < tableLength; i++) { System.out.println(args[i]); } } }
65
66
Instrukcje sterujce
if while do-while for switch-case Moliwo zastosowania etykiet przed iteracj: nazwaEtykiety: //iteracja
67
68
69
Etykiety
Umoliwiaj identyfikacj ptli Gdy przed iteracj jest etykieta, to break etykieta: continue etykieta: przerywaj wszystkie ptle do poziomu ptli z etykiet Oglnie jednak nie zaleca si naduywania takiej konstrukcji
copyright BNS MEDIA
70
Etykiety
etykieta: For (int i = 0; j < 5; i++) { for (int j = 0; j < 10; j++) { if (tab[i][j] == 0) { continue etykieta; //skok do zewntrznej ptli } } }
71
72
switch-case
int number = 7; Switch (number){ case 1: System.out.println("liczba = 1"); break; case 7: System.out.println("liczba = 7"); break; default: System.out.println("liczba rna od 1 i od 7"); break; } Jeli w kodzie pominiemy break; to zostan wykonane wszystkie operacje wystpujce w kolejnych przypadkach do kooca lub do momentu pojawienia si sowa break;
copyright BNS MEDIA
73
switch-case
Zastosowanie break;
Bez break;
74
75
while i do-while
int i = 5; While (i < 10) { System.out.println("Line number " + i); i++; }
76
Wynik w konsoli
while
do-while
77
String line; System.out.println("Kontynuowa? (t/f)"); line = buffer.readLine(); run = (line.equals("t")? true: false);
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
78
Pakiety
Projekt dzielimy na pakiety
Mog zawierad dowoln ilod klas, interfejsw i podpakietw Domylnie klasy s umieszczone w pakiecie bez nazwy, ktry nie moe mied podpakietw Pliki pakietu przechowuje sie na dysku w folderze o nazwie pakietu, a podpakiety w odpowiednich podfolderach
copyright BNS MEDIA
79
Pakiety
Na pocztku kodu naley umiecid informacj, do ktrego pakietu maj byd doczone tworzone klasy i interfejsy
package nazwa_pakietu;
package komunikacja; package klient;
Klasy z rnych pakietw mog mied te same nazwy
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
80
Pakiet java.lang
mona korzystad z jego klas i interfejsw bez jawnego deklarowania zawiera definicje podstawowych klas jzyka Java Jeli klasy znajduj si w tym samym pakiecie co dana klasa, to nie trzeba deklarowad pakietw
copyright BNS MEDIA
81
final
stae deklarowane s jako zmienne z modyfikatorem final mona przeksztacid zmienn w sta uywajc w deklaracji sowa kluczowego final
final String MESSAGE = "Witamy w systemie";
static oznacza, e dane pole lub metoda s wsplne dla wszystkich obiektw danej klasy
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
82
import static
Pozwala na import statycznych pl i metod z wybranej klasy import static pakiet.Klasa.nazwa; gdzie nazwa nazwa pola lub metody
Nie naley naduywa ze wzgldu na czytelno kodu (problem z rozpoznaniem klas, ktrych pola i metody importujemy)
copyright BNS MEDIA
83
import static
import static java.lang.Math.PI; import static java.lang.Math.random; public class Application { public static void main(String[]args) { double pole = PI * 3 * 3; System.out.println("Pole kola o prominiu 3: " + pole); System.out.println("Losowa liczba od 0 do 1: + random()); }
84
o
o
Kilka faktw Dlaczego Java? Maszyna wirtualna Javy Potrzebne narzdzia Kompilacja od rodka Dokumentacja Java Coding Convention Skadowe jzyka Java Typy w Java Klasa String Nazewnictwo Operatory Operacja przypisania Operacja rzutowania Zmienne Pierwsza aplikacja Tablice Instrukcje sterujce Pakiety final i static, import static
2.
Podstawy jzyka
o o o o o o o o o o o o o
85
o
o o o
Programowanie obiektowe Czym jest obiekt? Pojcie klasy Wicej o metodach Konstruktor Sowo kluczowe new Klasa gwna projektu Referencja Klasa Object Cechy OOP Enkapsulacja Polimorfizm Dziedziczenie Abstrakcja Interfejsy Specyfikatory dla class Specyfikatory dla pl i metod Klasy wewntrzne
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
4.
Obiektowod w praktyce
o o
o
o o o o o o o
86
o
o o o o o
Hierarchia wyjtkw Wyrzucanie wyjtkw Przechwytywanie wyjtkw Przydatne metody klasy Throwable Tworzenie wyjtkw Implementacja kolekcji w Java Tablice a kolekcje Uproszczona hierarchia kolekcji Podstawowe operacje na kolekcjach Typy generyczne
6.
Strumienie
o
o o o
Obsuga operacji wejcia-wyjcia Filtrowanie danych Serializacja danych Klasa formatujce tekst
JDBC Poczenie z baz danych Zapytania do bazy danych Przetwarzanie rezultatw
Wprowadzenie do platformy Java i programowanie w jzyku Java
www.devcastzone.com
7.
87
8. Interfejs uytkownika
o o o
Podstawowe pojcia przy tworzeniu GUI Delegacyjny model zdarzeo Tworzenie menu Zmienne systemowe Klasy systemowe Klasy opakowujce Adnotacje
9. Klasy systemowe
o o o o
88
Zapraszamy
89