Patrick Naughton
PODRĘCZNIK JĘZYKA PROGRAMOWANIA JAVA


Książka wyjaśnia zasady programowania zorientowanego obiektowo oraz opisuje konstrukcje języka Java. Zawarto w niej opis bibliotek klas składających się na Java Developer's Kit 1.0. Książka uczy programować w języku Java od podstaw.
Cena sprzedaży 59,90 zł
Cena sprzedaży bez VAT 57,05 zł
Rabat

Preloader
ISBN 83-86969-24-5, 478 stron, oprawa twarda, wymiary 160x230 mm.

Książka wyjaśnia zasady programowania zorientowanego obiektowo oraz opisuje konstrukcje języka Java. Zawarto w niej opis bibliotek klas składających się na Java Developer's Kit 1.0. Książka uczy programować w języku Java od podstaw do poziomu zaawansowanego.

Spis treści

Wstęp
Przegląd rozdziałów
Podziękowania
O autorze
Część 1. Język programowania Java

Rozdział 1. Rewolucyjne znaczenie Javy
1.1. Aplety Javy
1.2. Zalety języka Java
1.2.1. Prostota i wszechstronność
1.2.2. Bezpieczeństwo
1.2.3. Zorientowanie obiektowe
1.2.4. Niezawodność
1.2.5. Interakcja
1.2.6. Niezależność od sprzętu
1.2.7. Duża wydajność pomimo interpretacji
1.2.8. Łatwość poznania
1.3. Rozbudowane środowisko obiektowe
1.3.1. Klasy związane z Internetem
1.4. Zakończenie
1.3.2. Klasy podstawowe

Rozdział 2. Podstawy programowania zorientowanego obiektowo
362.1. Główne zasady programowania zorientowanego obiektowo
2.1.1. Enkapsulacja
2.1.2. Dziedziczenie
2.1.3. Polimorfizm
2.2. Podsumowanie wiadomości dotyczących obiektów
2.3. Powstanie Jayy
2.4. Założenia języka C++
2.5. Ulepszenia języka C++ wprowadzone do Javy
2.5.1. Zmienne globalne
2.5.2. Instrukcja goto
2.5.3. Wskaźniki
2.5.4. Zarządzanie pamięcią
2.5.5. Niejednoznaczność typów danych
2.5.6. Niebezpieczne rzutowanie typów
2.5.7. Listy argumentów o zmiennej długości
2.5.8. Oddzielne pliki nagłówkowe
2.5.9. Struktury i unie
2.5.10. Dyrektywy preprocesora
2.6. Zakończenie

Rozdział 3. Wprowadzenie do programowania w Javie
3.1. Pierwszy program
3.2. Analiza programu
3.2.1. Nagłówek klasy HelloWorld
3.2.2. Nagłówek metody main()
3.2.3. Wywołanie metody println()
3.3. Elementy leksykalne Javy
3.3.1. Odstępy
3.3.2. Komentarze
3.3.3. Zarezerwowane słowa kluczowe
3.3.4. Identyfikatory
3.3.6. Operatory
3.3.7. Separatory
3.4. Zmienne
3.4.1. Deklarowanie zmiennych
3.4.2. Zakres zmiennych
3.5. Zakończenie

Rozdział 4. Typy danych
4.1. Typy proste
4.1.1. Wprowadzenie do typów numerycznych
4.1.2. Typy całkowite
4.1.3. Typy zmiennoprzecinkowe
4.1.4. Rzutowanie typów
4.1.5. Znaki
4.1.6. Wartości logiczne
4.1.7. Podsumowanie
4.2. Tablice
4.2.1. Tablice wielowymiarowe
4.3. Zakończenie

Rozdział 5. Operatory
5.1 Operatory arytmetyczne
5.1.1. Podstawowe operacje arytmetyczne
5.1.2. Przypisania z operatorami arytmetycznymi
5.1.3. Inkrementacja i dekrementacja
5.2. Operatory bitowe
5.2.1. Cztery podstawowe operatory bitowe
5.2.2. Przykład operacji bitowych
5.2.3. Przesunięcie w lewo
5.2.4. Przesunięcie w prawo
5.2.5. Przypisania z operatorami bitowymi
5.3. Operatory relacyjne
5.4. Operatory logiczne
5.4.1. Szybkie operatory logiczne
5.4.2. Operator trójargumentowy ?:
5.5. Priorytety operatorów
5.5.1. Stosowanie nawiasów
5.6. Zakończenie

Rozdział 6. Instrukcje sterujące
6.1. Rozgałęzienia
6.1.1. Instrukcja if-else
6.1.2. Instrukcja break
6.1.3. lnstrukcja switch
6.1.4. Instrukcja return
6.2. Pętle
6.2.1. Instrukcja while
6.2.2. Instrukcja do-while
6.2.3. lnstrukcja for
6.2.4. Instrukcja continue
6.3. Wyjątki
6.4. Zakończenie

Rozdział 7. Klasy
7.1. Tworzenie klas
7.1.1. Zmiennie egzemplarzowe
7.1.2. Definiowanie metod
7.1.3. Konstruktory
7.1.4. Przeładowywanie metod
7.1.5. Słowo kluczowe this
7.2. Odwołania do obiektów
7.2.1. Operator new
7.2.2. Operator kropka
7.2.3. Wywoływanie metod
7.2.4. Przykład
7.3. Dziedziczenie klas
7.3.1. Słowo kluczowe super
7.3.2. Przykrywanie metod
7.3.3. Dynamiczne rozdzielanie metod
7.4. Pozostałe informacje dotyczące klas
7.4.1. Klasy, metody i zmienne finalne
7.4.2. Finalizacja
7.4.3. Metody i zmienne statyczne
7.4.4. Klasy abstrakcyjne
7.5. Zakończenie

Rozdział 8. Pakiety i interfejsy
8.1. Pakiety
8.1.1. Tworzenie pakietów
8.1.2. Kompilowanie i uruchamianie klas należących do pakietów
8.1.3. Importowanie klas z innych pakietów
8.1.4. Ochrona dostępu do elementów klas
8.2. Interfejsy
8.2.1. Słowo kluczowe interface
8.2.2. Słowo kluczowe implements
8.2.3. Zmienne w interfejsach
8.3. Zakończenie
Część 2. Klasy Javy

Rozdział 9. Wykonywanie działań na łańcuchach
9.1. Konstruktory klasy String
9.2. Ułatwienia w wykonywaniu działań na łańcuchach
9.2.1. Tworzenie łańcuchów
9.2.2. Konkatenacja łańcuchów
9.2.3. Konkatenacja łańcuchów i liczb
9.2.4. Przekształcanie obiektów do postaci łańcuchów
9.3. Wydobywanie i szukanie fragmentów łańcuchów
9.3.1. Wydobywanie znaków i podłańcuchów
9.3.2. Szukanie znaków i podłańcuchów
9.4. Porównywanie łańcuchów
9.4.1. Różnica między równością łańcuchów a równością zmiennych łańcuchowych
9.4.2. Sortowanie łańcuchów
9.5. Wykonywanie innych działań na łańcuchach
9.5.1. Modyfikowanie łańcuchów
9.5.2. Przedstawianie danych w postaci łańcuchów – metoda valueOf()
9.6. Klasa StringBuffer
9.6.1. Konstruktory
9.6.2. Łączenie łańcuchów – metody append() i insert()
9.6.3. Inne metody klasy StringBuffer
9.7. Zakończenie

Rozdział 10. Obsługa wyjątków
10.1. Podstawy
10.1.1. Typy wyjątków
10.2. Obsługa wyjątków przez system czasu przebiegu
10.3. Obsługa wyjątków przez program
10.3.2. Zagnieżdżone instrukcje try
10.3.3. Generowanie wyjątków – instrukcja throw
10.3.4. Słowo kluczowe throw
10.3.5. Słowo kluczowe finally
10.3.6. Tworzenie podklas klasy Exception
10.4. Zakończenie

Rozdział 11. Wątki i ich synchronizacja
11.1. Jednowątkowa pętla zdarzeń
11.2. Model wątków stosowany w Javie
11.2.1. Priorytety wątków
11.2.2. Synchronizacja
11.2.3. Porozumiewanie się wątków
11.3. Zarządzanie wątkami – klasa Thread
11.4. Tworzenie wątków – interfejs Runnable
11.5. Priorytety wątków
11.6. Synchronizacja
11.6.1. Słowo kluczowe synchronized
11.7. Porozumiewanie się wątków
11.7.1. Wzajemna blokada
13.8. Zestawienie metod klasy Thread
11.8.1. Metody statyczne
11.8.2. Metody związane z obiektami
11.9. Zakończenie

Rozdział 12. Klasy usługowe
12.1. Klasy odpowiadające typom prostym
12.1.1. Klasa abstrakcyjna Number
12.1.2. Klasa Character
12.1.3. Klasa Boolean
12.2. Wyliczenia
12.2.1. Interfejs Enumeration
12.2.2. Klasa Vector
12.2.3. Klasa Dictionary
12.2.4. Klasa StringTokenizer
12.3. Klasa Runtime
12.3.1. Zarządzanie pamięcią
12.3.2. Wykonywanie innych programów
12.4. Klasa System
12.4.1. Wartości zmiennych środowiskowych
12.5. Klasa Date
12.5.1. Metody get...() i set...()
12.5.2. Porównywanie obiektów klasy Date
12.5.3. Łańcuchy i strefy czasowe
12.6. Klasa Math
12.6.1. Funkcje trygonometryczne
12.6.2. Funkcje wykładnicze
12.6.3. Zaokrąglanie liczb
12.8. Zakończenie

Rozdział 13. Strumienie wejścia/wyjścia
13.1. Klasa File
13.1.1. Katalogi
13.1.2. Interfejs FilenameFilter
13.2. Klasy reprezentujące strumienie wejściowe i wyjściowe
13.2.1. Klasa abstrakcyjna InputStream
13.2.2. Klasa abstrakcyjna OutputStream
13.3. Podstawowe strumienie plikowe, tablicowe i łańcuchowe
13.3.1. Klasa FileinputStream
13.3.2. Klasa FileOutputStream
13.3.3. Klasa ByteArrayInputStream
13.3.4. Klasa ByteArrayOutputStream
13.3.5. Klasa StringBufferInputStream
13.4. Strumienie filtrowane
13.4.1. Strumienie buforowane
13.4.2. Klasa PushbackInputStream
13.5. Inne strumienie
13.5.1. Klasa SequenceInputStream
13.5.2. Klasa PrintStream
13.6. Przykład
13.7. Zakończenie

Rozdział 14. Korzystanie z Internetu
14.1. Klasa InetAddress
141.1. Metody fabryczne
14.1.2. Inne metody
14.2. Datagramy
14.2.1. Klasa DatagramPacket
14.3. Gniazda klientów
14.4. Gniazda serwerów
14.4.1. Prosty serwer HTTP
14.5. Klasa URL
14.6. Klasa URLConnection
14.7. Zakończenie

Rozdział 15. Aplety
15.1. Pierwszy aplet
15.2. Znacznik
15.2.1. Skladnia znacznika
15.3. Wspóldzialanie apletów z dokumentami
15.3.1. Przekazywanie apletom argumentów – metoda getParameter
15.3.2. Pobieranie danych – metody getDocumentBase() i getCodeflaw()
15.3.3. Wyświetlanie innych dokumentów – klasa AppletContext i metoda showDocument()
15.4. Debugowanie apletów
15.5. Szkielet apletu

15.6. Uaktualnianie okna apletu
15.6.1. Metoda repaint()
15.7. Tworzenie rysunków
15.7.1. Rysowanie prostokątów i kół
15.7.2. Rysowanie linii prostych
15.7.3. Rysowanie wycinków kół
15.7.4. Rysowanie wielokątów
15.8. Określanie kolorów – klasa Color
15.8.1. Konstruktory klasy Color
15.8.2. Metody klasy Color
15.9.1. Metoda drawString()
15.9.2. Tworzenie i używanie czcionek – klasa Font
15.9.3. Wymiary tekstu – klasa FontMetrics
15.9.4. Środkowanie tekstu za pomocą klasy FontMetrics
15.10. Przykład – wyrównywanie wielowierszowego tekstu

15.11. Zakończenie
Rozdział 16. Graficzny interfejs użytkownika
16.1. Wprowadzenie do klasy abstrakcyjnej Component
16.1.1. Klasa abstrakcyjna Container
16.1.2. Klasa Panel
16.1.3. Klasa Canvas
16.2. Elementy sterujące
16.2.1. Etykiety – klasa Label
16.2.2. Przyciski – klasa Button
16.2.3. Pola wyboru – klasa Checkbox
16.2.4. Przełączniki – klasa CheckboxGroup
16.2.5. Listy rozwijane – klasa Choice
16.2.6. Listy – klasa List
16.2.7. Paski przewijania – klasa Scrollbar
16.2.8. Jednowierszowe pola tekstowe – klasa TextField
16.2.9. Wielowierszowe pola tekstowe – klasa TextArea
16.3. Rozmieszczanie elementów sterujących
16.3.1. Menedżery układu
16.3.2. Wstawianie marginesów – klasa lnsets
16.4. Tworzenie nowych okien
16.4.1. Klasa Frame
16.4.2. System menu
16.5. Zdarzenia – klasa Event
16.6. Zakończenie

Rozdział 17. Obrazy graficzne
17.1. Najprostszy program wyświetlający obrazy graficzne
17.2. Obserwowanie procesu pobierania danych – interfejs ImageObserver
17.2.1. Przykładowa implementacja interfejsu ImageObserver
17.3. Podwójne buforowanie obrazów graficznych
17.4. Wyświetlanie grupy obrazów – klasa MediaTracker
17.5. Generowanie obrazów – interfejs ImageProducer
17.5.1. Klasa MemorylmageSource
17.6. Filtrowanie obrazów graficznych
17.6.1. Klasa CropImageFilter
17.6.2. Klasa RGBImageFilter
17.7. Animacja
17.8. Zakończenie

Część 3. Przykłady apletów Javy

Rozdział 18. Aplet Impression
18.1. Tekst źródłowy
18.1.1. Klasa MemoryImage
18.1.2. Klasa Impression
18.2. Działanie programu

Rozdział 19. Aplet DynaDraw
19.1. Tekst źródłowy
19.1.1. Klasa Filter
19.1.2. Klasa DynaDraw
19.2. Od C do Javy
19.3. Działanie programu

Rozdział 20. Aplet Poetry
20.1. Tekst źródłowy
20.1.1. Klasa Node
20.1.2. Klasa PoetryPanel
20.1.3. Klasa Poetry
20.2. Działanie programu

Część 4. Dodatki
Dodatek A. Pakiet Java Development Kit
A.1. Ładowanie pakietu JDK
A.l.l. Windows 95/NT, UNIX i Macintosh
A.1.2. Linux
A.l.3. Silicon Graphics
A.1.4. Inne systemy i środowiska operacyjne
A.2. Instalacja
A.2.1. Windows 95/NT
A.2.2. UNIX
A.2.3. Macintosh
A.3. Pierwsze użycie pakietu
A.4. Programy innych firm
A.4.1. Środowiska programowania
A.4.2. Dokumentacje
A.4.3. Debugery
A.5. Inne zasoby dla programistów Javy
Dodatek B. Historia powstania Javy
B.1. Początki
B.2. Przełomowa decyzja
B.3. Między NeWS aX11
B.4. W poszukiwaniu nowej drogi
B.5. Półtora roku wytężonej pracy
B.6. Narodziny nowej firmy
B.7. Piętrzące się problemy
B.8. Pomocny Internet
Skorowidz