12 Ðåñéå üìåíá ÊåöÜëáéï 1...21 ÅéóáãùãÞ óôéò Ãëþóóåò Ðñïãñáììáôéóìïý...21 1.1 Ç Ãëþóóá Ðñïãñáììáôéóìïý óôç äéáäéêáóßá ÁíÜðôõîçò ÓõóôçìÜôùí Ëïãéóìéêïý.21 1.1.1 Ìç áíßêåõóç Ëïãéóìéêïý... 23 1.1.2 ÌïíôÝëï Êýêëïõ æùþò Ëïãéóìéêïý - Ìåèïäïëïãßá... 24 1.1.3 ÉóôïñéêÞ áíáäñïìþ óôç äéáäéêáóßá áíüðôõîçò ëïãéóìéêïý... 25 1.1.4 Ç äéáäéêáóßá áíüðôõîçò ëïãéóìéêïý ùò äéáäéêáóßá ðáñáãùãþò ìïíôýëùí... 26 1.1.5 Ç äéåñãáóßá ùò âáóéêü äïìéêü óôïé åßï óôç äéáäéêáóßá áíüðôõîçò ëïãéóìéêïý.. 27 1.2 ÌïñöÝò ðñïãñáììáôéóìïý... 28 1.3 Éóôïñßá ôùí ãëùóóþí ðñïãñáììáôéóìïý...31 1.4 Áðü ôç C óôç Java... 33 1.4.1 Éóôïñßá ôçò C... 33 1.4.2 Ãéáôß C;... 36 1.4.3 Ãéáôß Java;... 37 1.4.4 Éóôïñßá ôçò Java... 38 ÊåöÜëáéï 2...43 ÂáóéêÝò Ýííïéåò ôçò Áíôéêåéìåíïóôñåöïýò ÐñïóÝããéóçò...43 2.1 Áíôéêåßìåíï - ÊëÜóç - Óôéãìéüôõðï... 44 2.1.1 Áíôéêåßìåíï... 44 2.1.2 ÊëÜóç êáé Óôéãìéüôõðï... 44 2.1.3 Ó Ýóåéò ìåôáîý ôùí êëüóåùí... 45 2.1.4 ÊÜèå êëüóç Ý åé Ýíáí áíáãíùñéóôþ... 47 2.2 Ôï Óýóôçìá óôçí ÁÐ... 47 2.2.1 Ôï óýóôçìá ùò óõíüèñïéóç áíôéêåéìýíùí... 47 2.2.2 Ôá áíôéêåßìåíá åðéêïéíùíïýí ìåôáîý ôïõò ìå ìçíýìáôá... 48 2.2.3 Ôá åðéìýñïõò áíôéêåßìåíá ôïõ óõóôþìáôïò óõíåñãüæïíôáé ãéá ôçí ðáñï Þ ôùí åîõðçñåôþóåþí ôïõ... 49 2.2.4... Ôá åîùôåñéêü áíôéêåßìåíá Ý ïõí ðñüóâáóç ìüíï óå ïñéóìýíá áíôéêåßìåíá ôïõ óõóôþìáôüò ìáò... 50 2.3 Äçìéïõñãßá - ÊáôáóôñïöÞ ÁíôéêåéìÝíïõ... 51 2.4 ÁíôéêåéìåíïóôñåöÞò ÐñïóÝããéóç ÁíÜðôõîçò ÓõóôçìÜôùí Ëïãéóìéêïý... 52
ÊåöÜëáéï 3...57 Äéáäéêáóßá ÁíÜðôõîçò Java ðñïãñüììáôïò...57 3.1 ÅéóáãùãÞ... 58 3.2 Äéáäéêáóßá áíüðôõîçò áõôüíïìçò åöáñìïãþò... 58 3.2.1 ÓõããñáöÞ ðçãáßïõ êþäéêá... 58 3.2.2 Ìåôáãëþôôéóç... 59 3.2.3 ÅêôÝëåóç... 59 3.3 Ï Java äéåñìçíåõôþò... 60 3.4 Äéáäéêáóßá áíüðôõîçò Applet... 62 3.5 ÅðåîÞãçóç åíüò áðëïý Ápplet... 65 ÊåöÜëáéï 4...71 ÊëÜóç - Áíôéêåßìåíï...71 4.1 Ãéáôß ÊëÜóç êáé Óôéãìéüôõðï;... 72 4.2 Ç ÊëÜóç óôç Java... 74 4.2.1 ÄÞëùóç ÊëÜóçò... 74 4.2.2 Äçìéïõñãßá óôéãìéüôõðïõ... 75 4.2.3 ÐÝñáóìá ìçíõìüôùí... 76 4.2.4 ÐñïóðÝëáóç óôá ÄåäïìÝíá ÁíôéêåéìÝíïõ... 78 4.2.5 ÅíèõëÜêùóç... 78 4.3 Äçìéïõñãïß áíôéêåéìýíùí... 79 4.3.1 Ìç áíéóìüò äçìéïõñãßáò óôéãìéüôõðïõ... 79 4.3.2 Ïñéóìüò Äçìéïõñãïý... 81 4.3.3 Ðïëëáðëïß Äçìéïõñãïß... 82 4.3.4 Õðåñöüñôùóç ìåèüäùí... 83 4.3.5 ÁðëïðïéçìÝíç óõããñáöþ äçìéïõñãþí... 84 4.4 ÌåôáâëçôÝò êáé ÌÝèïäïé êëüóçò... 85 4.4.1 ÌåôáâëçôÝò ÊëÜóçò... 86 4.4.2 ÓôáèåñÜ ÊëÜóçò... 87 4.4.3 ÌÝèïäïé ÊëÜóçò... 88 ÊåöÜëáéï 5... 111 Ç Java ùò åðýêôáóç ôçò C... 111 5.1 Ôýðïé ÄåäïìÝíùí... 112 5.1.1 O ôýðïò Boolean... 113 5.1.2 Ï ôýðïò Äåßêôç... 113 5.1.3 Ôýðïé áíáöïñüò... 113 5.1.4 Ôýðïò Ðßíáêá... 115 5.1.5 ÁëöáñéèìçôéêÜ... 118 5.2 ÔåëåóôÝò... 118 5.3 ÐñïôÜóåéò åëýã ïõ ñïþò... 121 5.3.1 ÐñïôÜóåéò if/else, while êáé do/while... 121 5.3.2 H ðñüôáóç switch... 122 5.3.3 Ç ðñüôáóç for... 122 5.3.4 Ïé ðñïôüóåéò break êáé continue... 123 5.3.5 Ç ðñüôáóç goto... 125 5.3.6 Ç ðñüôáóç synchronized... 126 13
14 5.3.7 Ïé ðñïôüóåéò package êáé import... 127 5.4 ËïéðÝò äéáöïñýò ôçò Java áðü ôçí C... 128 ÊåöÜëáéï 6... 131 Ç ÂáóéêÞ ÂéâëéïèÞêç ôçò Java... 131 6.1 ÃåíéêÜ... 132 6.2 ÅðåîÞãçóç ôçò System.out.println... 132 6.3 Ôñüðïé ñþóçò êëüóçò ôçò âáóéêþò âéâëéïèþêçò... 136 6.3.1 ÄÞëùóç ìåôáâëçôþò óôéãìéüôõðïõ... 136 6.3.2 ÄÞëùóç ìåôáâëçôþò êëüóçò... 137 6.3.3 ÄÞëùóç ôïðéêþò ìåôáâëçôþò óôï óþìá ìåèüäïõ... 137 6.3.4 ÄÞëùóç ôýðïõ ôõðéêïý ïñßóìáôïò ìåèüäïõ... 137 6.3.5 ÄÞëùóç ôýðïõ åðéóôñåöüìåíçò ôéìþò... 138 6.3.6 ñçóéìïðïßçóç õðçñåóßáò ðïõ ðñïóöýñåé ç êëüóç... 138 6.3.7 Äçìéïõñãßá óôéãìéüôõðïõ... 140 6.3.8 ñçóéìïðïßçóç õðçñåóßáò ðïõ ðñïóöýñåé óôéãìéüôõðï ôçò êëüóçò... 140 6.3.9 Äçìéïõñãßá íýáò êëüóçò ðïõ åßíáé åîåéäßêåõóç êëüóçò ôçò âáóéêþò âéâëéïèþêçò141 6.4 Ôá áëöáñéèìçôéêü óôç Java... 151 6.4.1 ÃåíéêÜ... 151 6.4.2 Ç êëüóç String... 151 6.4.3 Ç êëüóç StringBuffer... 157 ÊåöÜëáéï 7... 163 Ç êëüóç ùò äïìéêü óôïé åßï ôïõ ðñïãñüììáôïò... 163 7.1 Ïé êëüóåéò äåí åßíáé áíåîüñôçôåò ìåôáîý ôïõò... 164 7.1.1 Ó Ýóåéò áíôéêåéìýíùí... 164 7.1.2 Óõó åôßóåéò ìåôáîý êëüóåùí... 167 7.2 ÐñïóäéïñéóôÝò ïñáôüôçôáò... 169 7.3 Êáôçãïñßåò êëüóåùí... 172 7.3.1 ÊëÜóåéò äçëùìýíåò óå åìâýëåéá ðáêýôïõ... 172 7.3.2 íèåôåò êëüóåéò... 172 ÊåöÜëáéï 8... 179 Êëçñïíïìéêüôçôá... 179 8.1 ÁðëÞ Êëçñïíïìéêüôçôá... 180 8.1.1 ÃåíéêÜ... 180 8.1.2 ÐñïóèÞêç íýáò êëüóçò... 182 8.2 ÐïëëáðëÞ Êëçñïíïìéêüôçôá... 184 8.3 Ðïëõìïñöéóìüò... 185 8.4 H Êëçñïíïìéêüôçôá óôçí Java... 188 8.4.1 ÃåíéêÜ... 188 8.4.2 ÁöçñçìÝíåò êëüóåéò... 189 8.4.3 ÊÜèå êëüóç Ý åé ìéá ðñüãïíï êëüóç... 191 8.4.4 Ïé äçìéïõñãïß óôçí êëçñïíïìéêüôçôá... 192 8.4.5 Åðéêáëõðôüìåíåò ìåôáâëçôýò... 193 8.4.6 ÕðåñêÜëõøç ìåèüäùí... 194 8.4.7 Interfaces... 195
ÊåöÜëáéï 9... 205 åéñéóìüò ÅîáéñÝóåùí... 205 9.1 Ç ííïéá ôïõ åéñéóìïý åîáéñåóåþí... 207 9.2 åéñéóìüò åîáéñýóåùí óôç Java... 208 9.2.1 ÂáóéêÝò Ýííïéåò... 208 9.2.2 Ç êáôáóêåõþ try/catch/finally... 211 9.2.3ÐñïóèÝôïíôáò åéñéóìü åîáéñýóåùí... 213 9.2.4 ÄÞëùóç ôýðùí åîáßñåóçò... 214 9.2.5 ãåñóç åîáßñåóçò... 216 ÊåöÜëáéï 10... 221 Ôáõôü ñïíïò Ðñïãñáììáôéóìüò... 221 10.1 ÂáóéêÝò Ýííïéåò ôáõôü ñïíïõ ðñïãñáììáôéóìïý... 224 10.1.1 ÓõíèÞêåò áíôáãùíéóìïý... 224 10.1.2 Êñßóéìïé ôïìåßò (critical sections)... 225 10.1.3 ÁöáéñåôéêÞ èåþñçóç... 226 10.1.4 Ôñüðïé óõã ñïíéóìïý äéåñãáóéþí... 228 10.1.5 Óçìáöüñïé... 228 10.1.6 Ôï ðñüâëçìá ôïõ Ðáñáãùãïý ÊáôáíáëùôÞ... 236 10.1.7 ÅëåãêôÝò... 239 10.2 ÂáóéêÝò êáôáóêåõýò ôçò Java ãéá õðïóôþñéîç ôáõôü ñïíïõ ðñïãñáììáôéóìïý...241 10.2.1. Ç êëüóç Thread... 241 10.3 Ôï ðñüâëçìá ôïõ Ðáñáãùãïý ÊáôáíáëùôÞ óôç Java... 254 10.4 Óõã ñïíéóìüò íçìüôùí... 258 10.4.1 Ç ðñüôáóç synchronized... 258 10.4.2 Ïé ìýèïäïé wait êáé notify... 259 10.4.3 Ôï ðñüâëçìá ôïõ Ðáñáãùãïý ÊáôáíáëùôÞ... 260 10.5 Ôï ðñüâëçìá ôïõ äåßðíïõ ôùí óõíäáéôõìüíùí öéëïóüöùí... 263 10.5.1 ÐñïóÝããéóç ìå óçìáöüñïõò... 265 10.5.2 ÁðïöõãÞ ôïõ áäéåîüäïõ... 268 10.5.3 ÐñïóÝããéóç ìå åëåãêôýò... 270 10.5.4 Áêüìç ìéá ðñïóðüèåéá ìå óçìáöüñïõò... 273 10.5.5 Õëïðïßçóç óå Java... 275 ÊåöÜëáéï 11... 285 Áëëçëåðßäñáóç ìå ôïí ñþóôç -Ôï ðáêýôï AWT... 285 11.1 Ìçíýìáôá ðïõ áíôáëëüóóïíôáé ìåôáîý ôùí áíôéêåéìýíùí ðïõ áðáñôßæïõí ôï óýóôçìá... 286 11.1.1. Óôéãìéüôõðï (áðïóôïëýáò), óôéãìéüôõðï (ðáñáëþðôçò).... 286 11.1.2. ÊëÜóç (áðïóôïëýáò), óôéãìéüôõðï (ðáñáëþðôçò).... 287 11.1.3. Óôéãìéüôõðï (áðïóôïëýáò), êëüóç (ðáñáëþðôçò).... 288 11.1.4. ÊëÜóç (áðïóôïëýáò), êëüóç (ðáñáëþðôçò)... 290 11.2. Ìçíýìáôá ðïõ áíôáëëüóóïíôáé ìåôáîý áíôéêåéìýíùí ôçò åöáñìïãþò & ôïõ ñþóôç.292 11.3 ñçóéìïðïéþíôáò ôï ðáêýôï awt... 294 11.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 303 11.4.1 Äñáóôçñéüôçôá 2 ÅíäåéêôéêÞ ëýóç... 303 11.4.2 Äñáóôçñéüôçôá 3.1 ÅíäåéêôéêÞ áðüíôçóç... 303 15
16 11.4.3 Äñáóôçñéüôçôá 3.2 ÅíäåéêôéêÞ áðüíôçóç... 304 11.4.4 Äñáóôçñéüôçôá 3.3 ÅíäåéêôéêÞ áðüíôçóç... 305 11.4.5 Äñáóôçñéüôçôá 3.5 ÅíäåéêôéêÞ áðüíôçóç... 307 ÐÁÑÁÑÔÇÌÁ ÊÅÖÁËÁÉÏÕ... 309 11.5 ÊëÜóåéò ôçò âáóéêþò âéâëéïèþêçò... 309 11.5.1. Ç ÊëÜóç rame... 309 11.5.2. Ç ÊëÜóç Button... 310 11.5.3. Ç ÊëÜóç WindowAdapter... 311 11.5.4. Ç ÊëÜóç Text ield... 312 11.5.5. Ç ÊëÜóç ActionEvent... 313 11.5.6. To Interaface ActionListener... 314 ÊåöÜëáéï 12... 315 Äéáäéêáóßá ÁíÜðôõîçò ÐñïãñÜììáôïò... 315 12.1 óêçóç 1 - [áíáãíþñéóç áíôéêåéìýíùí-äéüãñáììá êëüóåùí]... 316 12.1.1. ÐåñéãñáöÞ... 316 12.1.2. Óôü ïò... 317 12.1.3. Ïäçãßåò... 319 12.1.4. Ìåèïäïëïãßá åêôýëåóçò... 319 12.1.5. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 321 12.2. óêçóç 2 - [Ç ìýèïäïò main]... 325 12.2.1. ÐåñéãñáöÞ... 325 12.2.2. Ç óôïßâá (stack)... 325 12.2.3. Ìåèïäïëïãßá åêôýëåóçò... 326 12.2.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 327 12.3 óêçóç 3... 339 12.3.1 ÐåñéãñáöÞ... 339 12.3.2 Ëýóç... 339 12.4. óêçóç 4 - [Êëçñïíïìéêüôçôá - Ðïëõìïñöéóìüò]... 341 12.4.1. ÐåñéãñáöÞ... 341 12.4.2. Äéáäéêáóßá áíüðôõîçò... 342 12.4.3. ÅíäåéêôéêÞ áðüíôçóç... 342 12.5 óêçóç 5 - [class responsibilities - test behavior]... 346 12.5.1. ÐåñéãñáöÞ... 346 12.5.2. Óôü ïò... 346 12.5.3. Ìåèïäïëïãßá åêôýëåóçò... 346 12.5.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 348 12.6. óêçóç 6 - [Using GUIs]... 356 12.6.1. ÐåñéãñáöÞ... 356 12.6.2. Óôü ïò... 357 12.6.3. Ìåèïäïëïãßá åêôýëåóçò... 358 12.6.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 360 12.7 óêçóç 7... 368 12.7.1 ÐåñéãñáöÞ... 368 12.8 óêçóç 8... 370 12.8.1 ÐåñéãñáöÞ... 370 12.9 óêçóç 9 - [Åvent Handling]... 372
12.9.1. ÐåñéãñáöÞ... 372 12.9.2. Óôü ïò... 372 12.9.3. Ìåèïäïëïãßá åêôýëåóçò... 372 12.9.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 375 12.10 óêçóç 10 - [increase reusability]... 391 12.10.1. ÐåñéãñáöÞ... 391 12.10.2. Óôü ïò... 391 12.10.3. Ìåèïäïëïãßá åêôýëåóçò... 391 12.10.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 392 12.11 óêçóç 11 - [increase flexibility, avoid switch statemet]... 395 12.11.1. ÐåñéãñáöÞ... 395 12.11.2. Óôü ïò... 395 12.11.3. Ìåèïäïëïãßá åêôýëåóçò... 395 12.11.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 407 12.12 óêçóç 12 - [Hands on GUI development-stack status]... 414 12.12.1. ÐåñéãñáöÞ... 414 12.12.2. Óôü ïò... 414 12.12.3. Ìåèïäïëïãßá åêôýëåóçò... 414 12.12.4. ÅíäåéêôéêÝò áðáíôþóåéò ôùí äñáóôçñéïôþôùí ôçò Üóêçóçò... 416 12.13 óêçóç 13... 417 12.14 óêçóç 14... 418 12.14.1 ÐåñéãñáöÞ... 418 12.15 óêçóç 15... 419 12.16 óêçóç 16 - [Åxception handling]... 420 12.16.1 ÐåñéãñáöÞ... 420 12.17 óêçóç 17 - [Exception handling óôçí Áñéèìïìç áíþ]... 421 12.18 óêçóç 18 - [Applet]... 422 12.18.1. ÐåñéãñáöÞ... 422 12.18.2. Äéáäéêáóßá áíüðôõîçò... 422 12.18.3. ÅíäåéêôéêÞ áðüíôçóç... 423 12.18.4. Ðçãáßïò êþäéêáò áðëïý applet... 424 12.19 óêçóç 19... 425 12.20 óêçóç Íï 20 Networking óå Java... 427 12.20.1 ÐåñéãñáöÞ... 427 12.20.2 Óôü ïé... 427 12.20.3 Ðåñéïñéóìïß ó åäéáóìïý... 427 12.20.4 Ïäçãßåò... 428 12.20.5 ÁíÜðôõîç ôïõ äéáêïìéóôþ... 434 12.20.6 ñþóç ôùí socket... 440 12.20.7 ÁíÜðôõîç ôïõ ðåëüôç... 447 ÃÅÍÉÊÅÓ ÁÓÊÇÓÅÉÓ... 459 ÐáñÜñôçìá Á... 465 ÊëÜóåéò ôçò âáóéêþò âéâëéïèþêçò ôçò Java... 465 1.1 ÊëÜóç Double... 465 1.2 ÊëÜóç System... 468 17
18 1.3 ÊëÜóç PrintStream... 471 1.4 ÊëÜóç Stack... 474 1.5 ÊëÜóç String... 475 1.6 ÊëÜóç StringBuffer... 482 1.7 ÊëÜóç Text ield... 487 1.8 ÊëÜóç Thread... 490 ÐáñÜñôçìá Â... 495 ÐáêÝôá ôçò âáóéêþò âéâëéïèþêçò ôçò Java (Java Platform Packages)... 495 ÐáñÜñôçìá Ã... 501 Ïäçãßåò ñþóçò ôïõ BlueJ... 501 1. ÅÉÓÁÃÙÃÇ... 505 1.1 Ðñüëïãïò... 505 1.2 Áíôéêåßìåíï êáé áêñïáôþñéï... 505 2. ÏÄÇÃÉÅÓ ÅÃÊÁÔÁÓÔÁÓÇÓ... 505 2.1 ÃåíéêÜ... 505 2.2 Ðñïáðáéôïýìåíá ðñïãñüììáôá... 505 2.3 Ðþò èá áðïêôþóåôå ôï BlueJ... 505 2.4 SDK, JDK êáé JRE... 506 2.5 ÅãêáôÜóôáóç... 506 3. ÑÇÓÇ ÔÏÕ BLUEJ... 507 3.1 Îåêéíþíôáò ôï BlueJ... 507 3.2 íïéãìá åíüò BlueJ project... 507 4. TÁ ÂÁÓÉÊÁ EDIT / COMPILE / EXECUTE... 508 4.1 Äçìéïõñãßá óôéãìéïôýðùí... 508 4.2 ÅêôÝëåóç (EXECUTION)... 511 4.3 Ôñïðïðïßçóç (EDITING) ìéáò ÊëÜóçò... 513 4.4 Ìåôáãëþôôéóç (Compilation)... 514 4.5 ÂïÞèåéá ãéá ôá ëüèç ôïõ COMPILER... 515 5. ÐÑÏ ÙÑÙÍÔÁÓ ËÉÃÏ ÐÁÑÁÐÅÑÁ...... 515 5.1 Åðéèåþñçóç (Inspection)... 519 5.2 Óýíèåóç (Composition)... 519 6. ÄÇÌÉÏÕÑÃÉÁ ÍÅÏÕ PROJECT... 520 6.1 Äçìéïõñãßá êáôáëüãïõ ãéá ôï project... 520 6.2 Äçìéïõñãßá êëüóåùí... 520 6.3 Äçìéïõñãßá åîáñôþóåùí (Dependencies)... 521 6.4 ÄéáãñáöÞ óôïé åßùí... 521 7. ÄÉÏÑÈÙÓÇ ËÁÈÙÍ (DeBUGGING)... 522 7.1 ÔïðïèÝôçóç óçìåßùí äéáêïðþò... 522 7.2 ÂÞìá ðñïò âþìá óôïí ðçãáßï êþäéêá... 524 7.3 Åðéèåùñþíôáò (Inspecting) ìåôáâëçôýò... 525 7.4 Ïé ëåéôïõñãßåò Halt & Terminate... 526 8. ÄÇÌÉÏÕÑÃÉÁ ÁÕÔÏÍÏÌÇÓ ÅÖÁÑÌÏÃÇÓ... 527 9. ÄÇÌÉÏÕÑÃÉÁ APPLETS... 528 9.1 ÅêôÝëåóç åíüò Applet... 528 9.2 Äçìéïõñãßá åíüò Applet... 529
9.3 ÄïêéìÜæïíôáò Ýíá Applet... 529 10. ÁËËÅÓ ËÅÉÔÏÕÑÃÉÅÓ... 530 10.1 íïéãìá åíüò project ðïõ äåí áíþêåé óôï BlueJ ìå ôï BlueJ... 530 10.2 ÐñïóèÞêç êëüóçò ó Ýíá project... 530 10.3 ÊëÞóç ôçò main êáé Üëëùí static ìåèüäùí... 530 10.4 Äïõëåýïíôáò ìå âéâëéïèþêåò... 531 ÐÁÑÁÑÔÇÌÁ Ä... 533 Äçìéïõñãßá åîáßñåóçò... 533 ÐÁÑÁÑÔÇÌÁ E... 537 Åßóïäïò äåäïìýíùí óôçí Java... 537 ÐÁÑÁÑÔÇÌÁ ÓÔ... 541 ÂáóéêÝò Ýííïéåò ãëùóóþí ðñïãñáììáôéóìïý... 541 1.Áöáéñåôéêüôçôá óôéò äéåñãáóßåò - ÓõíáñôÞóåéò.... 541 2. ÁíáðáñÜóôáóç ÄåäïìÝíùí- ÌåôáâëçôÝò, ÓôáèåñÝò, Ôýðïé ÄåäïìÝíùí... 547 3.ÁíáðáñÜóôáóç âáóéêþí äéåñãáóéþí ÔåëåóôÝò... 549 4. ÐñïôÜóåéò åëýã ïõ ñïþò... 550 ÃëùóóÜñé Áããëéêþí ¼ñùí... 561 ÃëùóóÜñé Åëëçíéêþí ¼ñùí... 567 ÅõñåôÞñéï... 573 19