注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)JAVA及其相關(guān)面向?qū)ο缶幊藽++和Java比較教程:中文版

面向?qū)ο缶幊藽++和Java比較教程:中文版

面向?qū)ο缶幊藽++和Java比較教程:中文版

定 價(jià):¥76.00

作 者: (美)Avinash C. Kak著;徐波譯
出版社: 人民郵電出版社
叢編項(xiàng): 國(guó)外著名高等院校信息科學(xué)與技術(shù)優(yōu)秀教材
標(biāo) 簽: C語(yǔ)言 程序設(shè)計(jì) 高等學(xué)校 教材

ISBN: 9787115122773 出版時(shí)間: 2004-01-01 包裝: 膠版紙
開(kāi)本: 26cm 頁(yè)數(shù): 820 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

方便學(xué)習(xí)和易于掌握相似的基本語(yǔ)言結(jié)構(gòu);增添學(xué)習(xí)樂(lè)趣,了解每種語(yǔ)言的優(yōu)點(diǎn)和不足;用不同語(yǔ)言編寫(xiě)具有相同功能的程序,可以培養(yǎng)靈活處理復(fù)雜項(xiàng)目的能力;相同概念的比較能夠加深對(duì)概念的理解。AvinashC.Kak是普度大學(xué)電子和計(jì)算機(jī)工程系的教授,負(fù)責(zé)教授面向?qū)ο缶幊毯驮O(shè)計(jì)課程,多次被評(píng)為“年度最佳教師”。C++和Java是目前兩種主流的面向?qū)ο缶幊陶Z(yǔ)言。本書(shū)從基本結(jié)構(gòu)到如何進(jìn)行應(yīng)用層次的編程,對(duì)這兩種語(yǔ)言進(jìn)行比較和對(duì)照,具有重要的學(xué)術(shù)價(jià)值和現(xiàn)實(shí)意義。全書(shū)共20章,分別從基礎(chǔ)概念和機(jī)制、基本語(yǔ)言要素、OO編程特性、專業(yè)編程應(yīng)用等方面,介紹了C++和Java的精髓和區(qū)別。本書(shū)還有一個(gè)獨(dú)特的學(xué)習(xí)方式,就是用C++重新編寫(xiě)一個(gè)特定的Java程序,實(shí)現(xiàn)相同的功能,或者反過(guò)來(lái),用Java重寫(xiě)C++程序。這種方法能夠培養(yǎng)學(xué)生更加靈活地處理那些比較困難的項(xiàng)目,無(wú)論是C++還是Java項(xiàng)目。每章最后的“更多閱讀推薦”提供了豐富的可查詢資料。本書(shū)適合高等院校計(jì)算機(jī)專業(yè)用做面向?qū)ο蟪绦蛟O(shè)計(jì)課程的教材,對(duì)于熟悉C++和Java兩種語(yǔ)言中的一種,?窒肓私夂駝莆樟硪恢鐘镅緣某絳蛟幣卜淺S邪鎦???

作者簡(jiǎn)介

  徐波浙江寧波人,熟悉C、C++和Java語(yǔ)言。2002年開(kāi)始從事計(jì)算機(jī)技術(shù)圖書(shū)翻譯,第一部譯作《C專家編程》博得好評(píng),其謙遜平和的態(tài)度也使讀者產(chǎn)生好感。徐波技術(shù)視野廣闊,翻譯文筆優(yōu)美,是頗具潛力的譯作者。特點(diǎn)特長(zhǎng):(1)英語(yǔ)基礎(chǔ)較好,熟悉多種編程語(yǔ)言。(2)語(yǔ)言功底深厚,文筆優(yōu)美得當(dāng)。(3)態(tài)度謙遜平和,善于聽(tīng)取讀者意見(jiàn)。頗具潛力的譯作者。>>更多作品

圖書(shū)目錄

第1章  大處著眼—OO編程的一些共性 1
1.1  什么是面向?qū)ο缶幊?1
1.2  OO有什么優(yōu)點(diǎn) 1
1.3  如何精通OO 2
第2章  初窺門(mén)徑 3
2.1  簡(jiǎn)單程序:對(duì)一個(gè)整型數(shù)組求和 3
2.2  簡(jiǎn)單程序:終端I/O 8
2.3  簡(jiǎn)單程序:文件I/O 12
2.4  更多閱讀推薦 16
2.5  作業(yè) 16
第3章  類(lèi)及其他一些關(guān)鍵的概念 18
3.1  在C++中定義類(lèi) 20
3.2  在Java中定義類(lèi) 23
3.3  創(chuàng)建對(duì)象:C++和Java 的異同 25
3.4  在C++中定義子類(lèi) 26
3.5  在Java中定義子類(lèi) 29
3.6  阻 斷 繼 承 32
3.7  創(chuàng)建對(duì)象的打印表示形式 34
3.8  對(duì)象的銷(xiāo)毀 35
3.9  Java的程序包(Package) 36
3.10  C++的名字空間(namespace) 40
3.10.1  using聲明和using指令 42
3.10.2  哪個(gè)名字空間擁有從其他名字空間中引入的名字 43
3.10.3  using聲明和using指令的作用域 44
3.10.4  嵌套名字空間和名字空間別名 45
3.10.5  無(wú)名名字空間 46
3.10.6  Koenig不帶限定名稱的函數(shù)名查找 46
3.11  類(lèi)成員的訪問(wèn)控制 47
3.12  抽象類(lèi)和接口 49
3.13  對(duì)象的比較 51
3.14  類(lèi)的靜態(tài)成員 54
3.15  模板類(lèi) 55
3.16  嵌套類(lèi)型 56
3.16.1  C++的嵌套類(lèi) 56
3.16.2  Java的嵌套類(lèi) 60
3.17  在C程序中實(shí)現(xiàn)OO行為 64
3.18  更多閱讀推薦 70
3.19  作業(yè) 70
第4章  字符串 73
4.1  C的字符串:簡(jiǎn)單回顧 73
4.2  C風(fēng)格字符串的一些弱點(diǎn) 75
4.3  C++的字符串 76
4.3.1  創(chuàng)建C++字符串對(duì)象 77
4.3.2  訪問(wèn)單個(gè)字符 77
4.3.3  字符串比較 78
4.3.4  連接字符串 80
4.3.5  查找子字符串和字符 81
4.3.6  提取子字符串 83
4.3.7  刪除和插入子字符串 83
4.3.8  長(zhǎng)度和容量 84
4.3.9  其他字符串函數(shù) 87
4.4  Java的字符串 88
4.4.1  創(chuàng)建String和StringBuffer對(duì)象 89
4.4.2  訪問(wèn)單獨(dú)的字符 91
4.4.3  字符串的比較 92
4.4.4  連接字符串 94
4.4.5  查找和替換 95
4.4.6  刪除和插入子字符串 96
4.4.7  提取子字符串 96
4.5  更多閱讀推薦 97
4.6  作業(yè) 97
第5章  使用容器類(lèi) 100
5.1  C++的容器類(lèi) 101
5.1.1  Vector 103
5.1.2  Deque 114
5.1.3  List 116
5.1.4  Stack 118
5.1.5  Queue 119
5.1.6  Priority_Queue 120
5.1.7  Map 121
5.1.8  Set 123
5.1.9  泛型算法 124
5.2  Java的容器 124
5.2.1  List 126
5.2.2  Set 129
5.2.3  Map 130
5.2.4  Vector 133
5.2.5  Java容器的算法 135
5.3  參考資料和更多閱讀推薦 137
5.4  作業(yè) 138
第6章  基本類(lèi)型及其輸入/輸出 144
6.1  標(biāo)記、標(biāo)識(shí)符和變量名 144
6.2  C++和Java的基本類(lèi)型 145
6.3  布爾類(lèi)型 145
6.4  字符類(lèi)型 146
6.5  整 數(shù) 類(lèi) 型 150
6.6  浮點(diǎn)類(lèi)型 151
6.7  基本類(lèi)型的類(lèi)型轉(zhuǎn)換 152
6.7.1  C++的隱式類(lèi)型轉(zhuǎn)換 152
6.7.2  Java的隱性類(lèi)型轉(zhuǎn)換 155
6.7.3  C++的顯式類(lèi)型轉(zhuǎn)換 158
6.7.4  Java的顯式類(lèi)型轉(zhuǎn)換 159
6.8  C++的I/O流 161
6.8.1  C++的流層次體系 161
6.8.2  字符流的輸入輸出操作 162
6.8.3  字節(jié)流的輸入輸出操作 167
6.8.4  控制格式 171
6.8.5  字符串流 174
6.9  Java的I/O流 175
6.9.1  基本類(lèi)型的寫(xiě)入 177
6.9.2  字符串的寫(xiě)入 181
6.9.3  基本類(lèi)型的讀取 184
6.9.4  字符串的讀取 185
6.10  更多閱讀推薦 186
6.11  作業(yè) 186
第7章  聲明、定義和初始化 191
7.1  什么時(shí)候聲明同時(shí)也是定義 191
7.2  C++的變量在定義時(shí)是否同時(shí)進(jìn)行了缺省初始化 193
7.2.1 如果不提供無(wú)參構(gòu)造函數(shù)會(huì)出現(xiàn)什么情況 195
7.2.2  const和引用成員的特殊情況 197
7.3  在Java中變量在定義時(shí)會(huì)不會(huì)進(jìn)行缺省的初始化 198
7.3.1  缺省初始化是否受類(lèi)成員的缺省值影響 200
7.3.2  如果構(gòu)造函數(shù)為一個(gè)類(lèi)成員指定了一個(gè)值,那么它的缺省值是否忽略 200
7.4  在C++中聲明指針類(lèi)型 201
7.5  C++的指針數(shù)組 203
7.6  聲明多個(gè)名字 204
7.7  C++標(biāo)識(shí)符的作用域 205
7.8  Java標(biāo)識(shí)符的作用域 206
7.9  C++的數(shù)組及其初始化 207
7.10  Java的數(shù)組及其初始化 210
7.10.1  Java數(shù)組是個(gè)對(duì)象 212
7.10.2  實(shí)現(xiàn)排序、查找等功能的java.lang.Arrays類(lèi) 213
7.11  符號(hào)常量 214
7.12  C++的宏 215
7.13  C++的枚舉類(lèi)型 216
7.14  參考資料和更多閱讀推薦 219
7.15  作業(yè) 219
第8章  對(duì)象引用和內(nèi)存分配 222
8.1  C++的對(duì)象引用 222
8.2  Java的對(duì)象引用 224
8.3  C++的內(nèi)存分配 224
8.4  Java的內(nèi)存分配 225
8.5  C++的結(jié)構(gòu) 226
8.6  作業(yè) 228
第9章  函數(shù)和方法 232
9.1  函數(shù)聲明 232
9.2  C++的參數(shù)傳遞 232
9.2.1  按照傳值方式傳遞一個(gè)基本類(lèi)型的參數(shù) 233
9.2.2  按照傳指針模式傳遞一個(gè)基本類(lèi)型的參數(shù) 233
9.2.3  按照傳引用模式傳遞一個(gè)基本類(lèi)型的參數(shù) 234
9.2.4  按照傳值模式傳遞一個(gè)類(lèi)類(lèi)型的參數(shù) 235
9.2.5  按照傳指針模式傳遞一個(gè)類(lèi)類(lèi)型的參數(shù) 236
9.2.6  按照傳引用模式傳遞一個(gè)類(lèi)類(lèi)型的參數(shù) 237
9.3  Java的參數(shù)傳遞 238
9.3.1  按照傳值模式傳遞一個(gè)基本類(lèi)型的參數(shù) 238
9.3.2  按照傳遞對(duì)象引用模式傳遞一個(gè)類(lèi)類(lèi)型的參數(shù) 238
9.4  返回引用類(lèi)型的C++函數(shù) 241
9.5  C++的內(nèi)聯(lián)函數(shù) 243
9.6  C++的靜態(tài)變量 244
9.7  C++函數(shù)的const參數(shù)和const返回類(lèi)型 245
9.8  Java方法的final形參 247
9.9  數(shù) 組 參 數(shù) 247
9.10  C++的函數(shù)重載解析 248
9.11  Java的函數(shù)重載解析 251
9.12  C++函數(shù)的缺省參數(shù) 252
9.13  C++的函數(shù)指針 253
9.14  更多閱讀推薦 255
9.15  作業(yè) 255
第10章  異常處理 260
10.1  C用于多層返回的setjmp/longjmp機(jī)制 260
10.2  C++的異常處理 263
10.3  C++異常處理的一些用法模式 264
10.4  C++和Java的異常處理的區(qū)別 270
10.5  Java的異常處理語(yǔ)法 271
10.6  Java異常處理的一些用法模式 272
10.7  Java的checked和unchecked異常 277
10.8  更多閱讀推薦 278
10.9  作業(yè) 278
第11章  類(lèi):剩余的故事 281
11.1  構(gòu)造函數(shù)的訪問(wèn)控制 281
11.1.1  限制對(duì)象數(shù)量 281
11.1.2  限制對(duì)C++無(wú)參構(gòu)造函數(shù)的訪問(wèn) 283
11.2  多個(gè)構(gòu)造函數(shù)可否互相調(diào)用 285
11.3  C++的靜態(tài)成員 285
11.4  Java的靜態(tài)成員 291
11.5  C++的const成員函數(shù) 295
11.6  C++的自身引用 295
11.7  Java的自身引用 298
11.8  C++的析構(gòu)函數(shù) 299
11.9   Java的對(duì)象銷(xiāo)毀 303
11.10  C++的拷貝構(gòu)造函數(shù)和拷貝賦值操作符 306
11.11  Java的賦值操作符的語(yǔ)義 310
11.12  Java的對(duì)象克隆 311
11.13  C++的指向類(lèi)成員的指針 316
11.14  交叉類(lèi)(Interleaved Class) 318
11.15  C++研究:一個(gè)具有適度復(fù)雜性的交叉類(lèi) 319
11.16  Java研究:一個(gè)具有適度復(fù)雜性的交叉類(lèi) 329
11.17  更多閱讀推薦 335
11.18  作業(yè) 335
第12章  C++的操作符重載 343
12.1  操作符標(biāo)記和操作符函數(shù) 343
12.2  操作符的全局重載定義 344
12.3  操作符的成員函數(shù)重載定義 345
12.4  單目操作符的全局重載定義 347
12.5  單目操作符的成員函數(shù)重載定義 348
12.6  操作符重載的案例研究 349
12.7  靈巧指針(smart pointer):解引用操作符的重載 360
12.8  自增和自減操作符的重載 367
12.9  用戶定義的轉(zhuǎn)換 371
12.10  “()”操作符的重載 374
12.11  通過(guò)“<”操作符的重載對(duì)類(lèi)類(lèi)型的對(duì)象進(jìn)行排序 376
12.12  參考資料和更多閱讀推薦 379
12.13  作業(yè) 379
第13章  泛型和模板 381
13.1  C++的參數(shù)化類(lèi)和函數(shù) 383
13.1.1  一個(gè)C++鏈表程序的實(shí)現(xiàn) 383
13.1.2  一個(gè)參數(shù)化的鏈表程序 386
13.1.3  模板特化 391
13.1.4  模板聲明的通用語(yǔ)法 393
13.2  重溫迭代器 395
13.2.1  泛型算法的迭代器類(lèi)型 395
13.2.2  如何聲明迭代器 396
13.3  Java的參數(shù)化類(lèi) 397
13.3.1  在Java中創(chuàng)建自己的參數(shù)化類(lèi)型 399
13.3.2  方法的參數(shù)化 403
13.3.3  限制參數(shù) 405
13.4  參考資料和更多閱讀推薦 408
13.5  作業(yè) 408
第14章  OO編程的模型圖 410
14.1  用例圖 410
14.2  類(lèi)圖 412
14.2.1  類(lèi)之間的關(guān)聯(lián)關(guān)系 413
14.2.2  類(lèi)之間的聚合和合成關(guān)系 414
14.2.3  表示屬性 415
14.2.4  表示操作 415
14.2.5  類(lèi)別模板(stereotype) 416
14.3  交互圖 416
14.3.1  順序圖 417
14.3.2  協(xié)作圖 421
14.4  包圖 421
14.5  狀態(tài)圖 423
14.6  活動(dòng)圖 427
14.7  參考資料和更多閱讀推薦 428
14.8  作業(yè) 430
第15章  類(lèi)的擴(kuò)展 431
15.1  C++子類(lèi)的公共派生 431
15.2  C++派生類(lèi)的構(gòu)造函數(shù) 434
15.3  C++派生類(lèi)的拷貝構(gòu)造函數(shù) 436
15.4  C++派生類(lèi)的拷貝賦值操作符 438
15.5  C++派生類(lèi)的操作符重載 440
15.6  C++派生類(lèi)的析構(gòu)函數(shù) 443
15.7  C++的虛擬成員函數(shù) 448
15.7.1  虛擬函數(shù)聲明的限制 452
15.7.2  多層類(lèi)層次體系中的虛擬函數(shù) 452
15.7.3  操作符能否具有多態(tài)行為 454
15.7.4 多態(tài)類(lèi)型 454
15.8  C++函數(shù)的靜態(tài)綁定和動(dòng)態(tài)綁定 455
15.9  C++函數(shù)覆蓋的限制 458
15.10  C++的虛擬析構(gòu)函數(shù) 461
15.11  C++構(gòu)造函數(shù)的順序依賴性 462
15.12  C++的抽象類(lèi) 464
15.13  C++的保護(hù)和私有派生類(lèi) 468
15.14  擴(kuò)展Java類(lèi) 472
15.15  Java方法覆蓋的限制 475
15.16  Java構(gòu)造函數(shù)的順序依賴性 477
15.17  Java的抽象類(lèi) 478
15.18  Java的接口 481
15.18.1  在Java中實(shí)現(xiàn)多個(gè)接口 485
15.18.2  在Java中擴(kuò)展接口 485
15.18.3  接口中的常量 488
15.19  C++個(gè)案研究:一個(gè)具有適當(dāng)復(fù)雜度的小型類(lèi)層次體系 489
15.20  Java個(gè)案研究:一個(gè)具有適當(dāng)復(fù)雜度的小型類(lèi)層次體系 501
15.21  參考資料和更多閱讀推薦 510
15.22  作業(yè) 510
第16章  C++的多重繼承 515
16.1  MI的一些例子 515
16.2  重復(fù)繼承可能導(dǎo)致的問(wèn)題 520
16.3  多重繼承的虛基類(lèi) 522
16.4  虛基類(lèi)和拷貝構(gòu)造函數(shù) 527
16.5  虛基類(lèi)和賦值操作符 530
16.6  避免成員函數(shù)的名字沖突 536
16.7  處理數(shù)據(jù)成員的名字沖突 538
16.8  一個(gè)重復(fù)繼承例子的實(shí)現(xiàn) 540
16.9  使用混合(mixin)類(lèi) 548
16.10  使用角色扮演類(lèi) 555
16.11  C++的運(yùn)行時(shí)類(lèi)型確定 566
16.12  參考資料和更多閱讀推薦 567
16.13  作業(yè) 567
第17章  圖形用戶界面OO編程 572
17.1  工具箱歷史的簡(jiǎn)要介紹 573
17.2  AWT/Swing組件 574
17.3  Qt部件 575
17.4  GNOME/GTK+部件 575
17.5  最簡(jiǎn)單的AWT/Swing GUI程序 576
17.6  最簡(jiǎn)單的Qt GUI程序 579
17.7  最簡(jiǎn)單的GNOME/GTK+程序 582
17.8  GUI程序的布局管理器 585
17.9  AWT/Swing的布局管理器 585
17.9.1  Border Layout 586
17.9.2  Flow Layout 588
17.9.3  Box Layout 590
17.9.4  Grid Layout 593
17.9.5  Card Layout 596
17.9.6  Grid-Bag Layout 599
17.10  Qt的布局管理器 602
17.10.1  Box Layout 603
17.10.2  Grid Layout 605
17.11  GNOME/GTK+的布局管理器 608
17.11.1  Box Layout 608
17.11.2  Table Layout 609
17.12  GUI程序的事件處理 612
17.13  AWT/Swing的事件處理 614
17.14  Qt的事件處理 624
17.14.1  一個(gè)需要使用元對(duì)象編譯的Qt例子 626
17.14.2  信號(hào)函數(shù)和slot函數(shù)的全面總結(jié) 634
17.15  GNOME/GTK+的事件處理 634
17.15.1  GNOME/GTK+中事件與其他部件的通信 636
17.15.2  GNOME/Gtk+ 回調(diào)函數(shù)的全面總結(jié) 641
17.16  AWT/Swing中帶菜單的窗口 643
17.17  Qt中帶菜單的窗口 647
17.18  GNOME/GTK+中帶菜單的窗口 653
17.19  在AWT/Swing中繪制形狀、文本和圖像 661
17.20  在Qt中繪制形狀、文本和圖像 673
17.21  在GNOME/GTK+中繪制形狀、文本和圖像 678
17.22  Java Applet 687
17.22.1  Applet的生命周期 688
17.22.2  Applet標(biāo)簽 688
17.22.3  一個(gè)Applet例子 690
17.22.4  雙重用途的Applet編程 696
17.22.5  AppletContext接口 699
17.22.6  與Applet相關(guān)的安全問(wèn)題 703
17.23  參考資料和更多閱讀推薦 704
17.24  作業(yè) 704
第18章  面向?qū)ο蠖嗑€程編程 707
18.1  在Java中創(chuàng)建和運(yùn)行簡(jiǎn)單的線程 708
18.2  Java的Runnable接口 711
18.3  線程的狀態(tài) 712
18.4  Java的線程沖突 713
18.5  Java的線程同步 719
18.6  Java用于處理死鎖的等待-通知機(jī)制 722
18.7  Java線程之間的數(shù)據(jù)IO 726
18.8  Java Applet的線程 728
18.9  AWT/Swing的Event Dispatch線程 730
18.10  C/C++的多線程編程 737
18.10.1  用POSlX線程演示線程沖突 742
18.10.2  處理POSIX線程沖突的Mutex 744
18.10.3  POSIX線程:處理死鎖的條件變量和等待-信號(hào)機(jī)制 746
18.11  C++的面向?qū)ο蠖嗑€程編程 750
18.12  參考資料和更多閱讀推薦 756
18.13  作業(yè) 756
第19章  網(wǎng)絡(luò)編程 758
19.1  在Java中與現(xiàn)有服務(wù)器建立Socket連接 758
19.2  Java的服務(wù)器Socket 761
19.3  在C++中與現(xiàn)有服務(wù)器建立Socket連接 766
19.4  C++(Qt)的服務(wù)器Socket 771
19.5  更多閱讀推薦 778
19.6  作業(yè) 779
第20章  數(shù)據(jù)庫(kù)編程 780
20.1  關(guān)系數(shù)據(jù)庫(kù) 780
20.2  MySQL數(shù)據(jù)庫(kù)管理系統(tǒng) 781
20.3  SQL 783
20.4  JDBC編程:通過(guò)Java調(diào)用SQL 790
20.5  Mysql++編程:通過(guò)C++調(diào)用SQL 794
20.6  更多閱讀推薦 799
20.7  作業(yè) 799
參考文獻(xiàn) 800

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.shuitoufair.cn 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)