dr Anna Kwiatkowska Instytut Informatyki Java składnia dr Anna Kwiatkowska Instytut Informatyki
Składnia- zbiór znaków programy w Javie zapisywane są przy użyciu Unikodu jest to standard, w którym każdy znak kodowany jest liczbą 16-bitową
Zbiór znaków znaki Unikodu niedostępne z klawiatury można wpisywać w programach Javy w formacie \uxxxx gdzie x jest cyfrą szesnastkową tj. cyfrą od 0 do 9 lub literą od a do f (wielkość liter jest nieistotna)
Zbiór znaków program Javy napisany w standardowym edytorze za pomocą kodu Latin-1 lub ASCII jest przed kompilacją "w locie" przekodowywany do formatu Unikod
Komentarze // komentarz komentarz jednowierszowy kończący się znakiem końca wiersza /* komentarz */ komentarz blokowy, który może być kontynuowany przez wiele wierszy /** komentarz */ komentarz dokumentacyjny (javadoc)
Komentarze komentarze Javy mogą zawierać dowolne znaki Unikodu w Javie nie można zagnieżdżać komentarzy
Identyfikatory identyfikatory są nazwami deklarowanych składników programu (zmiennych, stałych, nazw metod) oraz etykiet w Javie identyfikator jest ciągiem znaków, który nie jest słowem kluczowym lub zarezerwowanym, musi zaczynać się literą, znakiem podkreślenia _ lub znakiem dolara $, a po nich może wystąpić dowolny ciąg liter i cyfr Unikodu
Identyfikatory nie może zaczynać się od liczby identyfikatory mogą mieć dowolną długość identyfikatory różniące się choćby jednym znakiem są różne, w szczególności różniące się wielkością liter
Konwencje dotyczące tworzenia identyfikatorów w Javie typ konwencja przykład nazwa klasy każde słowo pisane dużą literą Pojazd, PojazdMechaniczny nazwa metody każde słowo oprócz pierwszego pisane dużą literą uzupełnijPaliwo nazwa pola lub zmiennej stanPaliwa nazwa stałej cały dużymi literami; wyrazy oddzielane znakiem podkreślenia MAKSYMALNA_PRĘDKOŚĆ
Identyfikatory oprócz słów kluczowych słowami zarezerwowanymi tj. takimi, których nie można używać jako identyfikatorów są: true, false i null
Typy danych typy proste: arytmetyczne typ char typ logiczny boolean typy złożone: obiektowe typ łańcuchowy string tablicowe
Typy liczb zakres możliwych do przedstawiania wartości jest ustalony z góry i nie zależy od platformy systemowej niezależnie od tego, na jakim systemie pracujemy (16-, 32- czy 64-bitowym) dokładnie wiadomo ile bitów zajmie zmienna danego typu
Całkowitoliczbowe typ liczba bitów zakres byte 8 -128 do 127 short 16 int 32 -2 147 483 648 do 2 147 483 647 long 64 -9 223 372 036 854 775 808 do 9 223 372 036 854 775 807
Zmiennopozycyjne typ liczba bitów zakres float (pojedynczej precyzji) 32 -3,4 ·1038 do 3.4 ·1038 double (podwójnej precyzji) 64 -1,8·10308 do 1,8 ·10308 Zmiennopozycyjne typy danych mogą przyjmować dodatkowe wartości plus nieskończoność, minus nieskończoność oraz "Not-a-Number" w skrócie NaN.
Typy proste typ char służy do reprezentacji znaków alfanumerycznych, w Javie jest on 16 bitowy i oparty na standardzie Unicode typ logiczny boolean
Literały Literał jest napisem reprezentującym wartość Literały typu int: 0 2 378 0378 0x378 początkowa cyfra 0 w przedostatniej liczbie oznacza, że podstawą liczenia jest 8 liczby zaczynające się znakami 0x lub 0X mają podstawę liczenia 16
Literały literały typu long: 0L 37689L 08695L 0x9876L literały zakończone są literą L litera l może być mała, ale wtedy łatwo pomylić ją z cyfrą 1
Literały literały typu float: 1e1f 2.F .3f 3.14F 23.467e+12f 3.7E-1f literały typu double: 1e1 2. .3 3.14 1e-9d 3.2e3D literały typu boolean: true false
Literały literały typu char: 'a' 'A' '\t' '\u039a' '\177‘ ostatnia liczba jest literałem zapisanym za pomocą liczby oktalnej -musi mieć postać liczby jedno dwu lub trzycyfrowej o cyfrach ósemkowych (od 0 do 7), i w przypadku trzech cyfr zaczynać się od 0, 1, 2 lub 3
Literały literały typu String: "ala" "\"" "\n" "" "\0116" "\116" literał referencyjny: null
Zmienne zmienna jest porcją danych określonego typu, do której można się odwołać poprzez jej nazwę ( identyfikator) w Javie wszystkie zmienne muszą być deklarowane deklaracja określa typ zmiennej, nazwę i ewentualnie wartość początkową (domyślną).
Zmienne deklaracje zmiennych mogą występować w dowolnym miejscu programu, ale przed pierwszym ich użyciem w Javie stałe deklarowane są jako zmienne z modyfikatorem final, można przekształcić zmienną w stałą używając w deklaracji słowa kluczowego static final
Przykład final int MAX_TEMP = 100; static final float VAT=22; int a; int b = 7; int c, d, e = 0, f = 7; char znak = 'a'; boolean warunek1 = false, warunek2 = true;
Typy złożone Są dwie klasy przeznaczone do przechowywania tekstów: String StringBuffer
Obiekty String obiekty tego typu służą do przechowywania stałych wartości (zmieniają się jedynie w wyniku prostego przypisania) obiekty te mogą być tworzone przy pomocy: String s= new String(„abc”); String s=„abc” obie konstrukcje są równoważne
Tablice jednowymiarowe tablica jest obiektem, indeksy tablicy są typu int i zaczynają się od 0 deklaracja tablicy tworzy referencję, nie alokuje pamięci dla samej tablicy int[ ] tab; użycie wyrażenia new lub inicjalizacja przydziela pamięć t1=new int[10]; int [ ] t2=new int[n];
Tablice jednowymiarowe rozmiar tablicy może być ustalony dynamicznie w fazie wykonania programu; odwołanie t2.length podaje aktualną liczbę elementów tablicy t2
Tablice - przykłady typowa deklaracja ma postać: int tab[]=new int[50]; inicjalizowanie elementów tablicy int liczby[ ] = { 1, 2, 3, 4, 5}; przetwarzanie wszystkich elementów tablicy for ( int i=0 ; i < t2.length ; i++) t2[ i ] = i;
Przykład class Instring {public static void main(String args[]) throws java.io.IOException {String imie; String nazw; imie=args[0]; nazw=args[1]; System.out.println("Witam "+imie+" "+nazw+ "!"); }}
Przykład