Podstawy języka „Java”
description
Transcript of Podstawy języka „Java”
Podstawy języka „Java” Podstawy języka „Java”
Nguyen Hung Son
Uniwersytet Warszawski
Spis rzeczySpis rzeczy
WprowadzenieNarzędzia JavyElementy językaPrzykłady programu w Javie
WprowadzenieWprowadzenie
Autor? James Gosling (również emacs) Kiedy? 1990 gdzie? Sun Microsystems Mountain View,
CA Maskotka Javy? Duke Bardzo podobny jest do C++
Narzędzia JavyNarzędzia Javy
Edytory:– Dowolny edytor tekstów– Jbuilder– MS Visual J– Visual Cafe– ...
Kompilatory Javy– JDK (Java Deverloper Kit) - najnowsza v. 1.3– ...
Zasada działaniaZasada działania
Zawartość JDKZawartość JDK
java - Interpreter Javy, pozwalający uruchamiaæ samodzielnie programy
javac - Kompilator Javy. javadoc - Generator dokumentów Javy. javah - generator plików C javap - Disasembler Javy. jdb - Debuger Javy.
Przykład pracy z JavąPrzykład pracy z Javą
Utwórzmy plik proba.java://Najprotszy program w Javieclass proba { public static void main(String[] args){ System.out.println(“Dzien dobry"); }}
Następnie kompilujemy:javac proba.java
Na końcu wykonujemy:java proba
Jaki jest wynik?
Komentarze w JavieKomentarze w Javie
Podwójny slash//Najprotszy program w Javie
Komentarz blokowy/*Najprotszy program w JavieAutor: Nguyen Hung Son */
Komentarz dokumentacyjny/** Klasa proba jest przykladem programu w Javie. @author Nguyen Hung Son
@version 1.0 */ class proba { ...
Elementy językaElementy języka
Typy podstawowe Operatory i ich priorytety Słowa kluczowe Javy Instrukcje sterująceKlasy Metody i pola
Typy podstawoweTypy podstawowe
Typ danych Rozmiar(w bitach)
Wartośćdomyślna
Opis
boolean 8 false przyjmuje wartosci logiczne true lub false
byte 8 0 wartość całkowita 8-bitowa ze znakiemchar 16 'x0' kod znaku w 16-bitowym kodzie Unicodeshort 16 0 wartość całkowita 16-bitowa ze znakiemint 32 0 wartość całkowita 32-bitowa ze znakiem
long 64 0 wartość całkowita 32-bitowa ze znakiemfloat 32 0.0F wartość zmiennoprzecinkowa 32-bitowadouble 64 0.0D wartość zmiennoprzecinkowa 64-bitowa
TabliceTablice
Tablice w Javie nie mogą być deklarowane statycznie!
//tablica jednowymiarowa
int tablica1[] = new int [100];
int[] tablica2 = new int [100];
//tablica dwuwymiarowa
int matryca1[][] = new int [10][10];
int[][] matryca2 = new int [10][10];
Operatory i ich priorytetyOperatory i ich priorytety
Priorytet Operator Priorytet Operator1 . [] () 9 ^2 ++ -- ! ~ instanceof 10 |3 * / % 11 &&4 + - 12 ||5 << >> >>> 13 ?:6 < > <= >= 14 = op=7 == != 15 ,8 &
Słowa kluczowe JavySłowa kluczowe Javy
abstract boolean break bytecase cast catch char class cons continue defaultdo double else extendsfinal finally float forfuture generic goto ifimplements import inner instanceofin interface long native new null operator outerpackage private protected publicrest return short staticsuper switch synchronized this throw throws transient tryvar unsigned virtual voidvolatile while
Znaki specjalneZnaki specjalne
Opis LiterałNew line (znak nowej linii) \nHorizontal tab (tabulacja pionowa) \tBackspace \bCarriage return (powrót karetki) \rFrom feed (znak nowej strony) \fSingle quote (apostrof) \'Double quote (cudzysłów) \"Backslash (lewy ukośnik) \\
Instrukcje sterująceInstrukcje sterujące
Instrukcja if-then-else Pętla while Pętla for Instrukcja switch Instrukcje break i continue
Instrukcja if-then-elseInstrukcja if-then-else
if (boolean) { /* instrukcje */ }else { /* instrukcje */ }
Pętle whilePętle while
Pętla whilewhile (boolean) { /* instrukcje */ }
Pętla do whiledo { /* instrukcje */ }while (boolean);
Pętla forPętla for
Definicja
for (wyr_1; wyr_logiczne; wyr_3) instrukcja
Np.for (int i=0; i<10 ; i++) { System.out.println(i + “.”); }
Instrukcja switchInstrukcja switch
switch ( wyrażenie) { case Wartość1 : /* ... */ break; case Wartość2 : /* ... */ break; default : /* ... */ break; }
Po co ?
Instrukcje break i continueInstrukcje break i continue
etykieta:
for (int j=1; j<10; j++)
{ /* po continue program zacznie
wykonywać się tutaj */
for (int i=1; i<20; i++) {
if (i==15) {
continue etykieta;
}
}
}