Java_Kompendium_programisty_Wydanie_X_javk10.pdf

(2402 KB) Pobierz
Tytuł oryginału: Java™: The Complete Reference, Tenth Edition
Tłumaczenie: Piotr Rajca oraz Mikołaj Szczepaniak (fragmenty pochodzące z „Java. Kompendium
programisty. Wydanie VIII”
ISBN: 978-83-283-4613-0
Original edition copyright © 2018 by McGraw-Hill Education (Publisher)
All rights reserved.
Polish edition copyright © 2018 by Helion SA
All rights reserved.
Oracle and Java are registered trademarks of Oracle Corporation and/or its affiliates. All other
trademarks are the property of their respective owners, and McGraw-Hill Education makes no claim of
ownership by the mention of products that contain these marks.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any
means, electronic or mechanical, including photocopying, recording or by any information storage
retrieval system, without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych
w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/javk10
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/javk10.zip
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
O autorze ............................................................................................................................. 25
Przedmowa .......................................................................................................................... 27
CZĘŚĆ I
Język Java
1
Historia i ewolucja języka Java .................................................................................... 33
Rodowód Javy ...................................................................................................................... 33
Narodziny nowoczesnego języka — C .......................................................................... 33
Język C++ — następny krok ....................................................................................... 35
Podwaliny języka Java .................................................................................................. 35
Powstanie języka Java ........................................................................................................... 35
Powiązanie z językiem C# ........................................................................................... 37
Jak Java wywarła wpływ na internet ...................................................................................... 37
Aplety Javy ................................................................................................................... 37
Bezpieczeństwo ........................................................................................................... 38
Przenośność ................................................................................................................. 38
Magia języka Java — kod bajtowy ........................................................................................ 39
Wychodząc poza aplety ....................................................................................................... 40
Serwlety — Java po stronie serwera ...................................................................................... 40
Hasła języka Java .................................................................................................................. 40
Prostota ........................................................................................................................ 41
Obiektowość ................................................................................................................ 41
Niezawodność ............................................................................................................. 41
Wielowątkowość .......................................................................................................... 42
Neutralność architektury .............................................................................................. 42
Interpretowalność i wysoka wydajność ......................................................................... 42
Rozproszenie ............................................................................................................... 42
Dynamika .................................................................................................................... 42
Ewolucja Javy ....................................................................................................................... 43
Java SE 9 .............................................................................................................................. 46
Kultura innowacji ................................................................................................................. 46
Kup książkę
Poleć książkę
4
Java. Kompendium programisty
2
Podstawy języka Java ................................................................................................... 47
Programowanie obiektowe ................................................................................................... 47
Dwa paradygmaty ........................................................................................................ 47
Abstrakcja ..................................................................................................................... 48
Trzy zasady programowania obiektowego ..................................................................... 48
Pierwszy przykładowy program ............................................................................................. 52
Wpisanie kodu programu ............................................................................................. 52
Kompilacja programów ................................................................................................. 53
Bliższe spojrzenie na pierwszy przykładowy program .................................................... 53
Drugi prosty program ............................................................................................................ 55
Dwie instrukcje sterujące ...................................................................................................... 56
Instrukcja if ................................................................................................................... 56
Pętla for ........................................................................................................................ 58
Bloki kodu ............................................................................................................................ 59
Kwestie składniowe .............................................................................................................. 60
Znaki białe ................................................................................................................... 60
Identyfikatory ............................................................................................................... 60
Stałe ............................................................................................................................. 60
Komentarze .................................................................................................................. 61
Separatory .................................................................................................................... 61
Słowa kluczowe języka Java .......................................................................................... 61
Biblioteki klas Javy ................................................................................................................ 62
3
Typy danych, zmienne i tablice ................................................................................... 63
Java to język ze
ścisłą
kontrolą typów .................................................................................... 63
Typy proste .......................................................................................................................... 63
Typy całkowitoliczbowe ....................................................................................................... 64
Typ byte ....................................................................................................................... 64
Typ short ...................................................................................................................... 65
Typ int .......................................................................................................................... 65
Typ long ....................................................................................................................... 65
Typy zmiennoprzecinkowe ................................................................................................... 65
Typ float ....................................................................................................................... 66
Typ double ................................................................................................................... 66
Typ znakowy ........................................................................................................................ 66
Typ logiczny ......................................................................................................................... 68
Bliższe spojrzenie na stałe ..................................................................................................... 68
Stałe całkowitoliczbowe ............................................................................................... 68
Stałe zmiennoprzecinkowe ........................................................................................... 69
Stałe logiczne ............................................................................................................... 70
Stałe znakowe .............................................................................................................. 70
Stałe
łańcuchowe
......................................................................................................... 71
Zmienne .............................................................................................................................. 71
Deklaracja zmiennej ..................................................................................................... 71
Inicjalizacja dynamiczna ............................................................................................... 72
Zasięg i czas
życia
zmiennych ....................................................................................... 72
Konwersja typów i rzutowanie .............................................................................................. 74
Automatyczna konwersja typów ................................................................................... 74
Rzutowanie niezgodnych typów ................................................................................... 75
Automatyczne rozszerzanie typów w wyrażeniach ................................................................ 76
Zasady rozszerzania typu .............................................................................................. 76
Tablice ................................................................................................................................. 77
Tablice jednowymiarowe .............................................................................................. 77
Tablice wielowymiarowe .............................................................................................. 79
Alternatywna składnia deklaracji tablicy ........................................................................ 82
Kilka słów o
łańcuchach
........................................................................................................ 83
Kup książkę
Poleć książkę
Spis treści
5
4
Operatory ..................................................................................................................... 85
Operatory arytmetyczne ....................................................................................................... 85
Podstawowe operatory arytmetyczne ........................................................................... 86
Operator reszty z dzielenia ........................................................................................... 86
Operatory arytmetyczne z przypisaniem ....................................................................... 87
Inkrementacja i dekrementacja .................................................................................... 88
Operatory bitowe ................................................................................................................. 89
Logiczne operatory bitowe ........................................................................................... 90
Przesunięcie w lewo ..................................................................................................... 92
Przesunięcie w prawo .................................................................................................. 93
Przesunięcie w prawo bez znaku .................................................................................. 94
Operatory bitowe z przypisaniem ................................................................................. 95
Operatory relacji .................................................................................................................. 96
Operatory logiczne ............................................................................................................... 97
Operatory logiczne ze skracaniem ................................................................................ 98
Operator przypisania ............................................................................................................ 99
Operator ? ........................................................................................................................... 99
Kolejność wykonywania operatorów .................................................................................. 100
Stosowanie nawiasów okrągłych ......................................................................................... 100
5
Instrukcje sterujące .................................................................................................... 103
Instrukcje wyboru ............................................................................................................... 103
Instrukcja if ................................................................................................................ 103
Instrukcja switch ......................................................................................................... 106
Instrukcje iteracyjne ........................................................................................................... 109
Pętla while ................................................................................................................. 110
Pętla do-while ............................................................................................................ 111
Pętla for ..................................................................................................................... 113
Wersja for-each pętli for ............................................................................................. 116
Pętle zagnieżdżone .................................................................................................... 120
Instrukcje skoku ................................................................................................................. 121
Instrukcja break .......................................................................................................... 121
Instrukcja continue ..................................................................................................... 124
Instrukcja return ......................................................................................................... 125
6
Wprowadzenie do klas .............................................................................................. 127
Klasy .................................................................................................................................. 127
Ogólna postać klasy ................................................................................................... 127
Prosta klasa ................................................................................................................ 128
Deklarowanie obiektów ..................................................................................................... 130
Bliższe spojrzenie na operator new ............................................................................ 131
Przypisywanie zmiennych referencyjnych do obiektów ...................................................... 131
Wprowadzenie do metod .................................................................................................. 132
Dodanie metody do klasy Box .................................................................................... 132
Zwracanie wartości .................................................................................................... 134
Dodanie metody przyjmującej parametry ................................................................... 135
Konstruktor ........................................................................................................................ 137
Konstruktor sparametryzowany ................................................................................... 138
Słowo kluczowe this ........................................................................................................... 139
Ukrywanie zmiennych składowych ............................................................................. 139
Mechanizm odzyskiwania pamięci ..................................................................................... 140
Klasa stosu .......................................................................................................................... 140
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin