Lis M. - C Praktyczny kurs. Wydanie III.pdf

(54998 KB) Pobierz
Spis
treści
Wstęp
.
.......... ..
....
..... ..... ..
.........
.......... ..
.........
........... .......... ...... ..... ..
9
ks iążka?
„.
„.
...
Czym
jest
C#?
Dl
a
kogo j
est
ta
Standardy C# .
Rozdział
..
••
„„
••
••
„„
••
„„
...... „
...... „
......
......
..•
..
..
.
..
..
..
......
...
.....
..
......
..
......
..
...
9
9
1O
••
.
„.
••
.• „
......
•..•
.
...•
..
..
..
„ .
„ .
1. Zanim zaczniesz
programować
.. „
..... „
....... „
..
.. „
.......................................................
11
..
.. „
....... „
.
Lekcj a
1.
Podstawowe
koncepcj e C#
i
.NET
Jak
to
d
zi ała?
..
Narzęd zi a
.
Instalacj
a
n
arzędzi
.
Lekcja 2. Pierwsza aplikacja, kompil acja
i uruchomi
enie
programu
.NET
Framework .................................................................................
.
.
Visual Studio
. ..
Mono
MonoDevelop (Xamarin Studi o)
Stru
ktura kodu
.
.
...
Lekcja 3. Komentarze
Komentarz bl
okowy
Komentarz li
niowy
Komentarz XML
.
Ćwiczeni a
do
samodzielnego wykonani a
„„„„„„„„
.
••
.
••
••
.„„„„
„„
„„„„„„„
„„„„„„
„„
.
„„„„„„„„„„ „„„„ „„„„„ „
.•
..
..
.....
. 11
ll
. ..
.....
12
..
13
....
16
. ....
16
..
. 19
.
.... 22
..... 23
.
..
26
.....
27
..... 27
..... 28
.
.... 29
........
30
Rozdział
2. Elementy
języka
.
...........................................................................
31
.„
.
.
..•
.
. „
..• „
.
..
.•
.
.
..•
.
. „
•..• „
.
...• „
.
..
.•
.
.
.
„„
Ty
py danych
....................................................................................................................
3
1
Lekcja
4.
Ty
py danych
w C# ..
32
Typy danych
w C#
.
..
32
Zapi s
wartości
(I
i
terały)
36
Zmi enn e.
39
Lekcja
5. Dekl
aracj e
i przypisania
.
.
39
Proste
dekl
aracje
39
Deklaracj e
wielu zmiennych
... .
41
Nazwy zmi ennych
42
Zmienne
typów
odnośni kowych
.
42
Ćwiczeni a
do
samodzielnego wykonani a
43
.
••
••
••
.
.
••
••
.
•...
.
• „
.
.
.
.
......
.
..
„ „ „
.
„ „ „ .
.
„ „ „ .
.
„ „ „ .
..
„ „ „
.
„.„
„ „
••
.
...•
.
.
.
••
.
...•
.
.
„„.
„„„„„„„„„„„„„
.
„„„„
„„ „
.
„„„„„„ „„„„
.
„„„„
„„„„„„„„„
.
„„„„
„„„„
4
C#. Praktyczny kurs
Lekcja 6. Wyprowadzanie danych na ekran
........
43
Wyświetlanie wartości
zmiennych
..... 43
........ 46
Wyświetlanie
znaków specjalnych
.
.....
..
48
Instrukcja
Console.Write ...............................
.
Ćwiczenia
do samodzielnego wykonania
........
49
Lekcja 7. Operacje
na
zmiennych
....
....
....
....
....
...
..
........ 49
Operacje arytmetyczne
.. .. .. .. ...
.
.
..
50
.
.... 57
Operacje bitowe
......
....
....
.
„ .
.
. .... 61
Operacje
logiczne
...............
..
...
. .... 63
Operatory przypisania
..............................
.
........
64
Operatory porównywania (relacyjne)
....
....... ..
65
Pozostałe
operatory
...
..
65
Priorytety operatorów .......................................
Ćwiczenia
do samodzielnego wykonania
........
66
Instrukcje
sterujące
..................................................
......
...
......
....
..
.....
..........
.....
......
.
....... 67
Lekcja 8.
Instrukcja
warunkowa if. .. else
........
67
Podstawowa
postać
instrukcji if... else
..... 67
Zagnieżdżanie
instrukcji
if...
el se
..
....
....
.
„.
.
.
....
...
69
.
..
.
72
Instrukcja
if.
else if.
Ćwiczenia
do samodzielnego wykonania . .............
....
.
.... 75
Lekcja
9.
Instrukcja
switch i operator warunkowy
....
...
........ ..
..
.
.... 76
.
....
76
Instrukcja switch ..........
......
...
.....
...
....
...
.......
..........
....
....
.
....
...
79
Przerywanie
instrukcji
switch
..........
.
.
..
.
Operator warunkowy ...............................
..
...
..
....
..
...
. .... 81
Ćwiczenia
do samodzielnego wykonania
........
82
.
.... 82
Lekcja 10.
Pętle
.
...
....
..
......
....
....
....
.....
....
....
....
....
.. .
Pętla
for
...
83
Pętla
while
.............
.
. .... 86
Pętla
do
...
while
..
...
88
Pętla
foreach
.
...
89
..... 90
Ćwiczenia
do samodzielnego wykonania
Lekcja
11.
Instrukcje break i continue
.................
..
.
.
.
....
91
Instrukcja
break
. ..
91
Instrukcja conti nue
........................................
...
„ .
.
. ...
.
95
Ćwiczenia
do samodzielnego wykonania
........
96
Tablice
.
.
..
97
Lekcja
12.
Podstawowe operacje na
tablicach
...... 98
.
.
98
Tworzenie tablic .
.
..... 101
Inicjalizacja tablic
......
...
...
....
.
Właściwość
Length ..............
....
......
....
...........
.
.
..... 102
Ćwiczenia
do samodzielnego wykonania
...........
103
Lekcja 13. Tablice wielowymiarowe ......................
..
.
...... 104
Tablice dwuwymiarowe
.
...
104
Tablice tablic .....
..
......
..
......
..
......
..
.......
....... ..
......
...
...
...
.
.
.... 107
Tablice dwuwymiarowe
i
właściwość
Length
....
...
...
..
..
..... .
109
......... 111
Tablice nieregularne .................
....................................
.
Ćwiczenia
do
samodzielnego wykonania
....
.....
....
.........
115
Rozdział
3. Programowanie obiektowe
...........................................................
117
Podstawy
Lekcja 14. Klasy i obiekty
Podstawy
obiektowości
Pierwsza klasa .
....................
.
Jak
użyć
klasy?
..
...
117
..
...
.
118
......
118
.
.....
11
9
...... 121
Spis
treści
5
Metody klas ......
........ ...
....
...
.......
....... ...
......
........ ...
....
...
....
..
....
..
..
.....
122
Jednostki
kompilacji, przestrzenie nazw i zestawy
....
.
126
Ćwiczenia
do
samodzielnego wykonania
.
„. „„„ „„.
.....
130
Lekcja
15.
Argumenty
i
przeciążanie
metod
. „„
„.„ .„.„
..... .
131
Argumenty
metod
„„„„„„
„„„„„„„„ „„„„ „„„
..
..... .
131
...... 134
Obiekt jako
argument
Przeciążanie
metod
„„„
„„„.„
" .
138
Argumenty
metody
Main
„„„„ „„„„ „„
„„„
..... .
139
Sposoby przekazywania argumentów . „„„ „„„„
......
140
Definicje metod
za
pomocą wyrażeil.
lambda
..
.... 143
Ćwiczenia
do
samodzielnego wykonania . „„„„„„„„„„
..
..
....
.
144
...... 145
Lekcja
16.
Konstruktory
i destruktory
. „„ ... „„„.„ ..
„„
Czym
jest
konstruktor? .
...
.
145
Argumenty konstruktorów
......
148
..... .
149
Przeciążanie
konstruktorów
Słowo
kluczowe this „„„„
„„„„ „„„
..
..
....
.
151
Niszczenie obiektu
„„„
„„„„ „„
„„„ „„
„„„
„„
„„
....
..
154
... 155
Ćwiczenia
do
samodzielnego wykonania .
Dziedziczenie .. „
..
„„„ .. „„„ .. „„„ .. „„„
..
„„„
..
„„„.„ .. „.„ „.
„.
„„
.„
....
„.
.
"
.. „
.
..... 156
. .
..
.
156
Lekcja
17. Klasy
potomne
.
„ .
..
.
Dziedziczenie
. „. „ „ „
„„
„ „
..
„ „ „
„„
„ „
„„
„ „„ „ „.
. ....
..
....
....
......
.
.....
.
156
Konstruktory klasy
bazowej
i
potomnej
...... 160
Ćwiczenia
do
samodzielnego wykonania .
".
164
Lekcja
18.
Modyfikatory
dostępu.
„.
„.
.
....
.
164
Określanie reguł
dostępu
„„
„„„
„„„„ „„„
..... .
165
.
170
Dlaczego
ukrywamy
wnętrze
klasy?
Jak
zabronić
dziedziczenia?
. „„
„„„ „„„
.
......
174
Tylko
do
odczytu. „
.
..
.
„„
...
„„ .„„
..... .
175
. .
.
178
Ćwiczenia
do samodzielnego wykonania
.
.
..
„ ...
.„.
...... 179
Lekcja
19.
Przesłanianie
metod i
składowe
statyczne
Przesłanianie
metod
. „
„.
„ „. „. „ „
„„
„ „
..
„ „ „„.„ „ „.
„.
„ „„
.....
179
Przesłanianie
pól „„„
„„„. „.„„„„
.„
„.„
..
.....
182
Składowe
statyczne „
„„„„ „„„„ „„„„ „„„„ „„.„
.....
183
Ćwiczenia
do samodzielnego wykonania
.
. .
.
186
Lekcja 20.
Właściwości
i
struktury. „. „. „ „ „ .
.
.
.... 186
Właściwości
. .
.
„.
„.
.
.
..
......
187
Struktury
.
.
196
.....
..
.... 200
Ćwiczenia
do
samodzielnego wykonania
Rozdział
4.
Wyjątki
i
obsługa błędów
.............................................................
203
Lekcja21.
Bloktry
... catch
.. „
„„
.
„„
„.
„.
„.
„. 203
Badanie
poprawności
danych
. .
„.
203
Wyjątki
w C#
.
..................................
....... ........
...... 207
Ćwiczenia
do
samodzielnego wykonania
„„„„„. 211
..... .
212
Lekcja 22.
Wyjątki
to
obiekty
..
...
... ..
......
..
....
....
......
..
„. „ 212
Dzielenie
przez
zero „„ „„„. „„
..
Wyjątek
jest
obiektem
.
.„
213
Hierarchia
wyjątków
„. „„„ „ „. „
„„
„ 214
Przechwytywanie
wielu
wyjątków
215
Zagnieżdżanieblokówtry
... catch .. „. „. „ „
„. „ .218
Ćwiczenia
do samodzielnego wykonania
.
„„.
220
6
Lekcja 23.
......
....
....
..
.....
..
...
...
.....
..
Zgłaszanie wyjątków
..........
..
..........
......
...........
....
....
...
.
Ponowne
zgłoszenie
przechwyconego
wyjątku
Tworzenie
własnych wyjątków
............................
.......
....
Wyjątki
warunkowe .........
...............
...
...
.
Sekcja
finally ...
.....
....
....
....
....
..
......
....
....
....
....
....
..
Ćwiczenia
do samodzielnego wykonania
wejścia-wyjścia
Własne wyjątki
C#. Praktyczny kurs
......
220
...
.. 221
...... 223
.....
........
.... ....
.
225
.....
.
226
......
228
...
......
.. 231
Rozdział
5. System
...............................................................
233
Lekcja 24.
Ciągi
znaków ... ....
...
........
....................... ...
....
...
....................
...
..................... 233
Znaki
i
łańcuchy
znakowe
..
....
233
Znaki specjalne ............
..
.
..
237
Zamiana
ciągów
na
wartości
...... 238
Formatowanie danych ..
......
...
....
...
.
. ..
...
240
......
242
Przetwarzanie
ciągów
......................
...
....
...
....
..
..
..
..
..
Ćwiczenia
do
samodzielnego wykonania
......
247
Lekcja 25. Standardowe
wejście
i
wyjście
.
.
.
...
.....
247
Klasa Con sole
i
odczyt znaków .
.
..
..
....
..
....
...... 248
Wczytywanie tekstu z klawiatury
...
...
255
Wprowadzanie liczb
.
.
....
256
Ćwiczenia
do
samodzielnego wykonania . .................
..
.
..........
... ..................
257
Lekcja 26. Operacje na systemie plików
..... .
258
......
258
Klasa FileSystemlnfo . ....
....... ..
......
..
.........
Operacje
na
katalogach
. .
..
............
..
..
...... 259
Operacje
na plikach
.
..
.
..
....
..
.
....
266
Ćwiczenia
do
samodzielnego wykonania
..
....
271
Lekcja 27. Zapis
i
odczyt plików . ... .......
..
....
....
......
..
.....
.
271
Klasa FileStream . ......
....... ..
......
..
................
..
...........
272
Podstawowe operacje odczytu i zapisu
...... 274
....
278
Operacje strumieniowe
.
Ćwiczenia
do
samodzielnego wykonania .
....... ..
..............
..
......
...
......
...........
.
..
..
..... 287
Rozdział
6.
Zaawansowane zagadnienia programowania obiektowego
.............
289
Polimorfizm .................. ....................
....
..
........
........ ..
.....
....
....
..
......
..
.............
... .
............
289
..
289
Lekcja 28.
Konwersje
typów i rzutowanie obiektów
.
Konwersje typów prostych ......
..
.......
..
.....
..
.......
....... ..
.......
......
290
Rzutowanie typów obiektowych
......
291
Rzutowanie na typ Object
.
.
......
.
....
.. ..
. .
.
..
295
.
.....
297
Typy proste
też
obiektowe
I .
.
.. .. ..
. ...
.. ...
.
.. ..
..
...
..
Ćwiczenia
do samodzielnego wykonania .
....... ..
.......
....... ..
.......
..
.....
.....
•..
......
299
Lekcja 29.
Późne
wiązanie
i
wywoływanie
metod
klas pochodnych
.
..
299
Rzeczywisty typ obiektu .
...
.. .. .... ..
...
... .. ..
..
.. ..
.. ....
.. .. ....
..
... ...
..
.... ..
..
.. ..
.
...... 300
Dziedziczenie
a
wywoływanie
metod
......
302
Dziedziczenie
a metody
prywatne
.
..... .. ...
...
..
..
......
307
Ćwiczenia
do
samodzielnego wykonania .
....... ..
...
•.
.•
.
....
308
Lekcja 30.
Konstruktory
oraz klasy abstrakcyjne
.
....
309
Klasy i
metody
abstrakcyjne .
......
..
.....
....
....
..
......
.
...... 309
Wywołania
konstruktorów .. .. ..
..
.. .. ..
...
. .. ..
..
.. ..
......
.
......
313
Wywoływanie
metod
w konstruktorach
.
... ..
.. ..
..
..
...... 316
Ćwiczenia
do
samodzielnego wykonania
...... 318
Interfejsy
.
.
..
.
.
....
..
319
Lekcja 31. Tworzenie
interfejsów
.
...
....
...
....
...... 319
Czym
interfejsy?
.
...........
......
..
..
..............
...
..............
..... 319
Interfejsy
a hierarchia klas
....
..
......
....
......
....
.........
..
..
..
..
...
........ ..
.
....
.....
..
......
...
..... 322
Zgłoś jeśli naruszono regulamin