1
Java, wprowadzenie do podstaw języka
Podstawowe właściwości języka;
Tworzenie oraz uruchamianie aplikacji w środowisku NetBeans IDE;
Literatura
Java 2. Podstawy
Autorzy: Cay Horstmann, Gary Cornell
Rozdział 3. Podstawy programowania w Javie
Składnia języka :
Identyfikatory;
Słowa kluczowe;
Typy, zmienne
Operatory i wyrażenia;
Instrukcje sterujące
2
Pierwszy program w Javie
Podstawy:
Program w Javie musi mieć rozszerzenie .java
Nazwa pliku powinna być zgodna z nazwą publicznej klasy. Jeśli klasa nazywa się Hello, to
plik powinien mieć nazwę Hello.java
Komentarze w Javie
Trzy typy komentarzy:
// …
/* …… */
Komentarze Javadoc , używane są do tworzenia dokumentacji programu w HTML /**
….. */.
Identyfikatory
Identyfikatory w Javie są „czułe” na wielkość liter, czyli Hello i hello to dwa różne
identyfikatory
Identyfikator musi rozpoczynać się od litery, znaku podkreślenia „_” lub znaku dolara „$”,
następne znaki mogę być już cyframi.
Identyfikatory klas powinny zaczynać się WIELKA literą
Nazwy metod i zmiennych powinny zaczynać się małą litera
3
Java Keywords
Literały
W Javie mamy 6 rodzajów literałów:
liczby całkowite (np. 13 czy -2627), mogą być dziesiętne, szesnastkowe (0xC) lub ósemkowe
(np. 015),
liczby rzeczywiste (np. 1.0 czy -4.9e12), mogą być dziesiętne, szesnastkowe lub binarne,
literały logiczne false i true,
literały znakowe (np. 'a' czy '\n'),
literały napisowe (np. "Ala ma kota"), na uwagę zasługuje fakt, że napisy nie są w Javie
wartościami typu pierwotnego, lecz klasy String. Mamy tu zatem sytuację, w której składnia
języka jest związana z jedną ze standardowych klas,
literał null.
Typy
Specyficzną cechą Javy jest to, że typy w tym języku są podzielone na dwie kategorie:
typy pierwotne,
typy referencyjne.
Typy pierwotne to grupa ośmiu typów zawierających wartości proste. Tymi typami są:
typ wartości logicznych: boolean,
typy całkowitoliczbowe: byte, short, int, long, char,
typy zmiennopozycyjne: float, double.
Typy referencyjne dzielą się z kolei na następujące kategorie:
typy klas,
typy interfejsów,
typy tablicowe.
4
Obiekty
Przez obiekty rozumie się w Javie dynamicznie stworzony egzemplarz jakiejś klasy lub
dynamicznie stworzoną tablicę (mimo że w Javie tablice nie są typami klasowymi). Żeby to
zrównanie egzemplarzy klas i tablic uprawomocnić zadbano, by zarówno egzemplarze klas jak
i tablice rozumiały wszystkie metody z klasy Object (jak zobaczymy w dalszych wykładach
efekt ten dla egzemplarzy jest zupełnie naturalnie osiągany dzięki dziedziczeniu).
Zmienne
Zmienna : typ zmiennej + nazwa zmiennej
<typ> <nazwa zmiennej> [=wartość inicująca]
Wartości w nawiasach <> są wymagane, natomiast wartości w nawiasach [ ] są opcjonalne
Zmienne są (zwykle) nazwanymi pojemnikami na pojedyncze wartości typu z jakim zostały
zadeklarowane. Zmienne typów pierwotnych przechowują wartości dokładnie tych typów,
zmienne typów referencyjnych przechowują wartość null albo referencję do obiektu typu
takiego jak typ zmiennej bądź do jego podklasy.
Wyróżniamy siedem rodzajów zmiennych:
zmienne klasowe,
zmienne egzemplarzowe,
zmienne lokalne,
elementy tablic (te zmienne są anonimowe),
parametry metod,
parametry konstruktorów,
parametry obsługi wyjątków.
Deklaracja zmiennych przykład
5
Możemy zadeklarować zmienne w następujący sposób:
Powyższy sposób jest bardziej zalecany niż deklaracja w „jednej linijce”
Wyświetlanie napisów
● System.out.println()
Przejście do nowej linijki
● System.out.print()
brak przejścia do nowej linijki
6
Operatory
Przykład
int i = 10;
int j = 3;
int k = 0;
7
k = ++j + i; //wynik: k = 4+10 = 14
Operator „?”
exp1?exp2:exp3
exp1 – wartość logiczna
Wynik:
Jeśli exp1 jest true to zwrócona zostanie wartość exp2 w przeciwnym wypadku zwrócona
zostanie wartość exp3
Instrukcje
Deklaracje zmiennej
int j = 13; int[] tab = new int[10];
instrukcja warunkowa
if (i > 0) i--; if (i > j) max = i; else max = j;
instrukcja wyboru
switch (i){
default: System.out.println("Wartość spoza zakresu"); break; // Tak, nie musi //być
ostatnia!
case 1: case 2: System.out.println("Dodatnie"); break;
case -1: case -2: System.out.println("Ujemne"); break;
case 0: System.out.println("Zero"); break; }
pętla dopóki
while (i>0) i--;
pętla dla (wersja podstawowa)
for(int j = 0; j<tab.length; j++) {
tab[j] = 0;
}
pętla dla (wersja rozszerzona)
for(int elt: tab)
System.out.print(elt+", ");
Pobieranie danych z klawiatury
8
Dwie metody pobieranie danych z klawiatury
◦ BufferedReader
◦ JOptionPane
1. BufferedReader
zawiera się w pakiecie java.io,
import java.io.*;
dodaj następujący kod, stworzenie instancji klasy BufferedReader
BufferedReader dataIn = new BufferedReader( new
InputStreamReader(System.in) );
przykład pobrania danych
try{
String temp = dataIn.readLine();
}
catch( IOException e ){
System.out.println(“Błąd podczas pobierania danych z
klawiatury”);
}
Przykład
2. Klasa JOptionPane
Zawarta w pakiecie javax.swing
Standardowe okienko do pobierania danych
Przykład:
9
Teoria:
Literatura: Java 2 Podstawy, rozdział 3 Podstawy programowania w Javie, podrozdział Tablice
1. Tablice
Tablica to struktura danych zawierająca ciąg tego samego typu. Uzyskujesz dostęp do każdej z
wartości poprzez indeks. Np.. Jeśli tab jest tablicą liczb to a[i] jest i-tą liczbą w tej tablicy.
Deklaracja tablicy. Zmienna tablicy deklarujemy, określając typ tablicy, nastepnie znaki []
ostatecznie nazwę zmiennej np.:
Integer[] tablica;
Możemy tablice zadeklarować także w poniższy sposób:
Integer tablica [];
Inicjalizacja tablicy. Powyższym sposobem zadeklarowaliśmy zmienna tablica, by utworzyć
tablicę, używamy operatora new. Poniższy przkład tworzy tablicę która może przechować 30 liczb.
Komórki tablicy numerowane są od 0 !
Integer[] tablica= new Integer[30];
Gdy spróbujemy odwołać się do elementu tablica[30] (lub innego indeksu spoza przedziału
0…29), program zwróci wyjątek „array index out of bounds”|
Java umożliwia tworzenie tablicy obiektów oraz inicjalizacje wartości w tym samym momencie.
Integer[] liczba = {1,2,3,4,88};
Przykładowy program wyświetlający wszystkie elementy tablicy
Długośc tablicy możemy uzyskać poprzez metodę nazwa tablicy.length
10
2. Parametry lini poleceń.
Każdy program w języku Java zawiera metodę main, której parametrem jest String[] args. Ten
parametr mówi iż metoda main otrzymuję tablicę łańcuchów- argumentów wypisanych w linii
poleceń. Kolejność argumentów jest następująca: argument 1 wywołania umieszczany jest w
args[0], argument 2 wywołania umieszczany jest w args[1], itd.