Język Java jest obecnie najszybciej rozwijającym się środowiskiem tworzenia aplikacji. Jeśli dopiero zaczynasz swoją przygodę z programowaniem w Javie, skorzystaj z tej książki. Książka Java - Podstawy omawia podstawowe zagadnienia dotyczące Javy, o których powinien wiedzieć każdy programista J2SE.
Java to obiektowy język programowania stworzony przez firmę Sun Microsystems. Niewątpliwą zaletą programów napisanych w Javie jest to, że można je uruchamiać na różnych urządzeniach oraz pod różnymi systemami operacyjnymi. W tym celu niezbędna jest tzw. Wirtualna Maszyna Javy. Program źródłowy jest kompilowany do kodu bajtowego, czyli takiego który może zostać wykonany przez Wirtualną Maszynę Javy.
Najważniejszą zaletą Javy jest to, że jest to język niezależny od platformy. Nie musisz się zatem martwić tym, że Twój program nie zadziała w systemie Windows, Linux, Solaris. Kod napisany w Javie zadziała pod każdym systemem, na który jest zaimplementowana wirtualna maszyna Javy.
Drugą bardzo ważną zaletą jest to, że jest to język zorientowany obiektowo. W Javie wszystko, oprócz typów prostych takich jak liczby, jest obiektem. Obiektowość języka Java pozwala na łatwe tworzenie nawet bardzo skomplikowanych projektów.
Twórcy Javy wzorowali się na innych istniejących językach programowania. Skupili się jednak na tym, by wyeliminować te ich cechy, które były najczęstszym źródłem błędów w programach. Dlatego też w Javie nie ma wskaźników ani możliwości wielokrotnego dziedziczenia, tablice w Javie są obiektami, zostały wprowadzone interfejsy, zablokowano także możliwość przypisywania wartości zmiennym w wyrażeniach warunkowych (niemożliwe jest więc wyrażenie if (zmienna = 5) ).
Twórcy wymieniają kilkanaście podstawowych cech języka Java. Najważniejsze z nich to:
Co jest potrzebne aby rozpocząć programowanie w języku Java?
Czyli środowiska niezbędnego do programowania w języku Java. JDK jest dostępne dla wielu systemów operacyjnych. Do pobrania pod tym adresem.
Co prawda JDK posiada wszystkie niezbędne elementy do tworzenia oprogramowania w Javie, jednak kompilowanie i uruchamianie programów ogranicza się do wpisywania poleceń w systemowym wierszu poleceń. W celu usprawnienia produkcji oprogramowania zostały stworzone środowiska programistyczne (IDE). Dzięki środowiskom programistycznym tworzenie, modyfikowanie i testowanie oprogramowania staje się prostsze. Na rynku istnieje wiele środowisk dla języka Java, dwa najpopularniejsze z nich to:
Rozdział ten zawiera podstawowe informacje dotyczące języka programowania Java. Opisane są tu informacje dotyczące: podstawowych typów w Javie, zmiennych, operatorów, łańcuchów, operacji wejścia i wyjścia oraz instrukcji sterujących.
Kod źródłowy w języku Java zapisujemy w plikach z rozszerzeniem ".java". Zazwyczaj każdy plik zawiera jedną klasę, a jego nazwa jest taka sama jak nazwa tej klasy. Oznacza to, że gdy tworzymy klasę o nazwie Program zapisujemy ją w pliku o nazwie Program.java. Aby stworzyć prosty program wypisujący ciąg znaków na ekranie należy:
public class NazwaKlasy,main, jest to metoda, która jest wywoływana przez interpreter Javy w chwili, gdy zostaje uruchomiony program,System.out.println("ciąg znaków")Jeśli chcemy uruchomić program używając jedynie środowiska JDK należy użyć kolejno dwóch poleceń w wierszu poleceń:
javac:javac Program.javaProgram.classjava:java ProgramWitaj w javabook.pl!W poniższej tabeli zostały przedstawione słowa kluczowe języka Java. Słowa kluczowe to specjalnie zarezerwowane wyrazy, których nie można użyć jako nazw klas metod czy zmiennych. Słowa te mają przypisane sobie komendy, na podstawie których kompilator rozumie, co robi dany kod źródłowy.
Słowa true, false oraz null także są zarezerwowane i nie jest możliwe tworzenie zmiennych, klas czy metod o takich nazwach (nie są one słowami kluczowymi lecz literałami).
| abstract | assert | boolean | break | byte |
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | short | static | strictfp | super |
| switch | synchronized | this | throw | throws |
| transient | try | void | volatile | while |
Słowa const oraz goto są zarezerwowane ale nie mają przypisanych komend. Komenda const w innych językach programowania jest używana do deklarowania stałych. W języku Java używa się do tego komend public static final. W Javie nie stosuje się także komendy goto, ponieważ została ona uznana za niebezpieczną.
Na kolejnych stronach zostaną szerzej opisane poszczególne słowa kluczowe.
W Javie trzy słowa kluczowe określają modyfikatory dostępu, są to:
privateDostęp do danej metody lub zmiennej jest możliwy tylko z wnętrza danej klasy.
Przykłady zastosowania identyfikatora private:
go() lub zmiennej key możliwe jest jedynie z wnętrza klasy KeywordPrivate.
protectedDostęp do metod lub zmiennych jest ograniczony jedynie do pakietu w którym znajduje się klasa lub dla potomków tej klasy.
Przykłady zastosowania identyfikatora protected:
publicDostęp do klasy, metod lub zmiennych możliwy jest z każdej innej klasy programu.
Przykłady zastosowania identyfikatora public:
KeywordPublic oraz jej metod i pól jest możliwy z klasy Main znajdującej się w innym pakiecie.
Poniżej przedstawione są modyfikatory klas, metod i/lub zmiennych:
abstractModyfikator stosowany do deklaracji klas, które nie mogą zostać zainicjalizowane lub metod, które muszą zostać zaimplementowane w nie abstrakcyjnym potomku danej klasy.
Przykład zastosowania abstract:
classSłowo kluczowe używane do deklarowania klas.
Przykład zastosowania class:
extendsModyfikator stosowany do deklaracji klasy będącej potomkiem innej klasy bazowej.
Przykład zastosowania extends:
finalZastosowanie tego modyfikatora pozwala na zadeklarowanie finalnej klasy, metody czy zmiennej. Dzięki słowu final niemożliwe jest dziedziczenie po finalnej klasie, przykrywanie metod czy ponowne inicjalizowanie zmiennych.
Przykład zastosowania final:
implementsSłowo kluczowe deklarujące klasę, która implementuje dany interfejs.
Przykład zastosowania implements:
interfaceModyfikator stosowany do deklaracji interfejsów.
Przykład zastosowania interface:
nativeOznaczenie metody, która jest napisana w innym języku programowania.
Przykład zastosowania native:
newSłowo kluczowe używane do tworzenia instancji klasy poprzez wywołanie konstruktora.
Przykład zastosowania new:
MyClass myClass = new MyClass();
staticModyfikator używany do deklaracji metod lub zmiennych statycznych.
Przykład zastosowania static:
strictfpModyfikator używany do oznaczania klas lub metod, w których wszystkie wyrażenia zmiennoprzecinkowe będą przeliczane zgodnie ze standardem IEEE 754.
Przykład zastosowania strictfp:
synchronizedZastosowanie tego modyfikatora powoduje synchronizację metody, czyli w danej chwili dostęp do metody może mieć tylko jeden wątek.
Przykład zastosowania synchronized:
transientModyfikator stosowany do oznaczania pól klasy. Zabezpiecza on te pola przed zapisywaniem do strumienia.
Przykład zastosowania transient:
volatileModyfikator zmiennych, zezwalający na modyfikowanie przez wiele wątków jednocześnie.
Przykład zastosowania volatile:
Thinking in Java. Edycja polska.