ebook img

C# programozás lépésről lépésre PDF

288 Pages·2012·2.337 MB·Hungarian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview C# programozás lépésről lépésre

A könyv nyomtatott verziója megvásárolható a könyvesboltokban, és a kiadó webáruházában: www.joskiado.hu Reiter István C# programozás lépésről lépésre JEDLIK OKTATÁSI STÚDIÓ Budapest, 2012 Minden jog fenntartva. A szerző és a kiadó a könyv írása során törekedtek arra, hogy a leírt tartalom a lehető legpontosabb és naprakész legyen. Ennek ellenére előfordulhatnak hibák, vagy bizonyos információk elavulttá válhattak. A példákat és a módszereket mindenki csak saját felelősségére alkalmazhatja. Javasoljuk, hogy felhasználás előtt próbálja ki és döntse el saját maga, hogy megfelel-e a céljainak. A könyvben foglalt információk felhasználásából fakadó esetleges károkért sem a szerző, sem a kiadó nem vonható felelősségre. Az oldalakon előforduló márka- valamint kereskedelmi védjegyek bejegyzőjük tulajdonában állnak. © Reiter István, 2012 Borító: Varga Tamás Anyanyelvi lektor: Dr. Bonhardtné Hoffmann Ildikó Kiadó: Jedlik Oktatási Stúdió Kft. 1215 Budapest, Ív u. 8-12. Internet: http://www.jos.hu E-mail: [email protected] Felelős kiadó: a Jedlik Oktatási Stúdió Kft. ügyvezetője Nyomta: LAGrade Kft. Felelős vezető: Szutter Lénárd ISBN: 978-615-5012-17-4 Raktári szám: JO-0340 E LŐSZÓ Amikor 2008. augusztusában elkészültem ennek a könyvnek az első változatával még problémát okozott átlépni a „bűvös” 100 oldalas határt. Ha jól emlékszem, végül 108 oldal lett, szerencsére már csak az Internet egy sötét sarkában lehet megtalálni. Érdekes módon ezúttal is az oldalszám okozott gondot, igaz, fordult a kocka: valamivel több mint 300 oldalt kellett kitöltenem, némi kompromisszum árán sikerrel is jártam. Ha jobban belegondolok, az elmúlt 4 évem alapjaiban határozta meg ez a könyv. Rengeteget köszönhetek neki, de őszintén szólva néha gyűlöltem is. Valójában most is ezt teszem, hiszen éjjel 11 van és álmos vagyok. 4 év alatt elképesztő változáson esett át az informatika világa. Ebben a pillanatban is újabb csodák születnek. Borzalmasan nehéz lépést tartani a technológia végtelen evolúciójával, szinte lehetetlennek látszó feladat. Ennek a könyvnek a célja, hogy olyan alapokat nyújtson, amelyre nyugodtan támaszkodhatunk a kalandos úton, amelyet szoftverfejlesztésnek hívnak. Több mint 40000 olvasó többszáz jótanácsának, visszajelzésének eredménye az amit most a kezedben tartasz! Nem fogok hazudni, ez nem egy mindentudó lexikon és nem is csodalámpa, amit megdörzsölve azonnal fejedbe száll a tudás - bár próbálkozni lehet. Tekintsd társnak, jóbarátnak, aki utat mutat, ha elakadtál. Remélem, épp annyi örömet okoz majd Neked, mint nekem tette! Kötelességem köszönetet mondani mindazoknak, akik hozzájárultak a könyv létrejöttéhez! Sajnos annyi helyem nincs, hogy mindenki elférjen, mégis szeretném kiemelni néhányukat: Kovács Gyula és Balázs Gábor tanár uraknak, a gyömrői Teleki László Gimnázium és Informatikai Szakközép– iskolából. Lippé Szabolcsnak és a Microsoft Magyarországnak, köszönöm a lehetőséget, remélem hamarosan elérjük a hatszámjegyű letöltésszámot is! Ecsegi Szandrának, hogy végig mellettem állt, rámutatott olyan dolgokra, amik nekem eszembe sem jutottak. Köszönöm. A könyv és a hozzátartozó programozási példák a weben is elérhetőek a Devportal.hu oldalon. Tóalmás, 2012. augusztus Reiter István 5 6 T ARTALOMJEGYZÉK MICROSOFT .NET FRAMEWORK ___________________________________________________________ 15 A .NET platform ___________________________________________________________________________ 15 MSIL/CIL _________________________________________________________________________________ 15 Fordítás és futtatás ________________________________________________________________________ 16 BCL _____________________________________________________________________________________ 16 A C# programozási nyelv ____________________________________________________________________ 16 Alternatív megoldások _____________________________________________________________________ 16 ISMERKEDÜNK A NYELVVEL _______________________________________________________________ 18 Visual Studio _____________________________________________________________________________ 18 Hello World! ______________________________________________________________________________ 18 A C# szintaktikája __________________________________________________________________________ 21 Kulcsszavak ______________________________________________________________________________ 22 Megjegyzések _____________________________________________________________________________ 22 Névterek _________________________________________________________________________________ 23 VÁLTOZÓK ____________________________________________________________________________________ 24 Deklaráció és definíció______________________________________________________________________ 24 Típusok __________________________________________________________________________________ 24 Lokális és globális változók __________________________________________________________________ 25 Referencia- és értéktípusok _________________________________________________________________ 25 Referenciák ______________________________________________________________________________ 27 Boxing és unboxing ________________________________________________________________________ 28 Konstansok _______________________________________________________________________________ 30 A felsorolt típus ___________________________________________________________________________ 30 Null típusok ______________________________________________________________________________ 32 A dinamikus típus _________________________________________________________________________ 33 7 OPERÁTOROK ________________________________________________________________________________ 35 Operátor precedencia ______________________________________________________________________ 35 Értékadó operátor _________________________________________________________________________ 36 Matematikai operátorok ____________________________________________________________________ 36 Relációs operátorok ________________________________________________________________________ 37 Logikai és feltételes operátorok ______________________________________________________________ 37 Bit operátorok ____________________________________________________________________________ 40 Rövid forma ______________________________________________________________________________ 43 Egyéb operátorok _________________________________________________________________________ 43 VEZÉRLÉSI SZERKEZETEK __________________________________________________________________ 46 Szekvencia _______________________________________________________________________________ 46 Elágazás _________________________________________________________________________________ 46 Ciklus ___________________________________________________________________________________ 51 GYAKORLÓ FELADATOK ____________________________________________________________________ 57 Szorzótábla _______________________________________________________________________________ 57 Számológép ______________________________________________________________________________ 60 Kő – Papír – Olló___________________________________________________________________________ 62 Számkitaláló játék _________________________________________________________________________ 64 TÍPUSKONVERZIÓK _________________________________________________________________________ 68 Ellenőrzött konverziók ______________________________________________________________________ 68 Is és as __________________________________________________________________________________ 69 Karakterkonverziók ________________________________________________________________________ 70 TÖMBÖK ______________________________________________________________________________________ 71 Többdimenziós tömbök _____________________________________________________________________ 72 STRINGEK _____________________________________________________________________________________ 75 Metódusok _______________________________________________________________________________ 76 StringBuilder _____________________________________________________________________________ 77 8 Reguláris kifejezések _______________________________________________________________________ 78 GYAKORLÓ FELADATOK II. ________________________________________________________________ 81 Minimum- és maximumkeresés ______________________________________________________________ 81 Szigetek _________________________________________________________________________________ 81 Átlaghőmérséklet _________________________________________________________________________ 82 Buborékrendezés __________________________________________________________________________ 83 OBJEKTUM-ORIENTÁLT PROGRAMOZÁS - ELMÉLET __________________________________ 85 UML ____________________________________________________________________________________ 85 Osztály __________________________________________________________________________________ 85 Adattag és metódus ________________________________________________________________________ 85 Láthatóság _______________________________________________________________________________ 86 Egységbezárás ____________________________________________________________________________ 86 Öröklődés ________________________________________________________________________________ 86 OSZTÁLYOK __________________________________________________________________________________ 88 Konstruktorok ____________________________________________________________________________ 89 Adattagok ________________________________________________________________________________ 91 Láthatósági módosítók _____________________________________________________________________ 92 Parciális osztályok _________________________________________________________________________ 92 Beágyazott osztályok _______________________________________________________________________ 94 Objektuminicializálók ______________________________________________________________________ 95 Destruktorok _____________________________________________________________________________ 95 METÓDUSOK ________________________________________________________________________________ 103 Paraméterek ____________________________________________________________________________ 105 Visszatérési érték _________________________________________________________________________ 110 Kiterjesztett metódusok ___________________________________________________________________ 111 TULAJDONSÁGOK ___________________________________________________________________________ 113 INDEXELŐK __________________________________________________________________________________ 115 9 STATIKUS TAGOK __________________________________________________________________________ 117 Statikus adattag __________________________________________________________________________ 117 Statikus konstruktor ______________________________________________________________________ 118 Statikus metódus _________________________________________________________________________ 119 Statikus tulajdonság ______________________________________________________________________ 120 Statikus osztály __________________________________________________________________________ 120 STRUKTÚRÁK _______________________________________________________________________________ 121 Konstruktor _____________________________________________________________________________ 121 Destruktor ______________________________________________________________________________ 122 Adattagok _______________________________________________________________________________ 123 Hozzárendelés ___________________________________________________________________________ 123 Öröklődés _______________________________________________________________________________ 125 OSZTÁLYKÖNYVTÁRAK ___________________________________________________________________ 126 GYAKORLÓ FELADATOK III. ______________________________________________________________ 130 Faktoriális és hatvány _____________________________________________________________________ 130 Gyorsrendezés ___________________________________________________________________________ 131 Láncolt lista _____________________________________________________________________________ 133 Bináris keresőfa __________________________________________________________________________ 134 ÖRÖKLŐDÉS _________________________________________________________________________________ 138 Virtuális metódusok ______________________________________________________________________ 139 Polimorfizmus ___________________________________________________________________________ 141 Lezárt osztályok és metódusok ______________________________________________________________ 142 Absztrakt osztályok _______________________________________________________________________ 142 INTERFÉSZEK _______________________________________________________________________________ 145 Explicit interfészimplementáció _____________________________________________________________ 147 Virtuális tagok ___________________________________________________________________________ 148 10

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.