Java程序設計(第5版)

辛運幃、饒一梅

  • 出版商: 清華大學
  • 出版日期: 2024-09-01
  • 定價: $419
  • 售價: 8.5$356
  • 語言: 簡體中文
  • ISBN: 7302650993
  • ISBN-13: 9787302650997
  • 下單後立即進貨 (約4週~6週)

  • Java程序設計(第5版)-preview-1
  • Java程序設計(第5版)-preview-2
  • Java程序設計(第5版)-preview-3
Java程序設計(第5版)-preview-1

相關主題

商品描述

"本書從Java語言的基本特點入手,全面介紹了Java語言的基本概念和編程方法,並深入講解了Java的高級特性。內容涉及Java中的基本語法、數據類型、類、異常、界面設計、小應用程序、I/O數據流、線程及網絡功能等內容,基本覆蓋了Java的大部分技術,是進一步使用Java語言進行技術開發的基礎。本書適合Java語言的初學者使用,也可作為專業人員的參考書。 本書內容詳盡,實例豐富,每章均有配套的習題,方便教學,適合作為高等學校教材,也可作為專業人員的參考書。 本書的習題解答及有關上機實驗可參看與本書配套的《Java程序設計題解與上機指導》(第5版)。 "

目錄大綱

目    錄

第1章  概述 1

1.1  什麽是Java語言 1

         1.1.1  Java語言的特點 1

         1.1.2  Java的三層架構 3

         1.1.3  Java語言的目標 4

         1.1.4  Java虛擬機 4

         1.1.5  垃圾收集 5

         1.1.6  代碼安全 5

1.2  一個基本的Java應用程序 8

         1.2.1  開發環境的安裝 8

         1.2.2  Java應用程序 11

1.3  程序的編譯和運行 13

         1.3.1  編譯 13

         1.3.2  運行 14

1.4  常見錯誤 14

         1.4.1  編譯時錯誤 14

         1.4.2  運行時錯誤 15

1.5  使用Java核心API文檔 17

習題 19

第2章  標識符和數據類型 20

2.1  Java的基本語法單位 20

         2.1.1  空白、註釋及語句 20

         2.1.2  關鍵字 22

         2.1.3  標識符 22

2.2  Java編碼體例 23

2.3  Java的基本數據類型 24

         2.3.1  基本數據類型 24

         2.3.2  類型轉換 27

         2.3.3  變量、說明和賦值 27

2.4  復合數據類型 29

         2.4.1  概述 29

         2.4.2  復合數據類型 29

2.5  類和對象的初步介紹 30

         2.5.1  Java中的面向對象技術 30

         2.5.2  Java中的類定義 32

         2.5.3  Java中與OOP有關的關鍵字 33

         2.5.4  類定義示例 35

         2.5.5  創建一個對象 38

         2.5.6  引用變量的賦值 40

         2.5.7  默認初始化和null引用值 41

         2.5.8  術語概述 41

習題 42

第3章  表達式和流程控制語句 44

3.1  表達式 44

         3.1.1  操作數 44

         3.1.2  運算符 48

         3.1.3  表達式的提升和轉換 52

         3.1.4  數學函數 52

3.2  流控制 53

         3.2.1  表達式語句 53

         3.2.2  塊 54

         3.2.3  分支語句 54

         3.2.4  循環語句 59

         3.2.5  break語句與continue語句 62

         3.2.6  註釋語句 64

3.3  簡單的輸入輸出 64

習題 67

第4章  數組、向量和字符串 70

4.1  數組 70

         4.1.1  數組說明 70

         4.1.2  創建數組 71

         4.1.3  數組邊界 74

         4.1.4  數組元素的引用 74

         4.1.5  多維數組 75

         4.1.6  數組復制 80

4.2  Vector類 81

         4.2.1  概述 81

         4.2.2  Vector類的構造方法 82

         4.2.3  Vector類對象的操作 82

         4.2.4  Vector類中的其他方法 84

         4.2.5  Vector類的使用舉例 84

4.3  字符串類型 86

         4.3.1  字符串簡述 86

         4.3.2  字符串說明及初始化 86

         4.3.3  字符串處理 87

         4.3.4  幾個特殊處理 88

習題 90

第5章  進一步討論對象和類 93

5.1  抽象數據類型 93

         5.1.1  概述 93

         5.1.2  定義方法 94

         5.1.3  按值傳送 97

         5.1.4  方法重載 98

5.2  對象的構造和初始化 99

         5.2.1  顯式成員初始化 100

         5.2.2  構造方法 100

         5.2.3  默認的構造方法 101

         5.2.4  構造方法重載 102

         5.2.5  finalize()方法 103

         5.2.6  this引用 103

5.3  子類 104

         5.3.1  is-a關系 105

         5.3.2  extends關鍵字 105

         5.3.3  單重繼承 106

         5.3.4  轉換對象 108

         5.3.5  方法自變量和異類集合 110

5.4  方法重寫 111

         5.4.1  方法重寫示例 111

         5.4.2  應用重寫的規則 115

         5.4.3  調用父類構造方法 116

5.5  多態 117

5.6  Java包 118

         5.6.1  Java包的概念 119

         5.6.2  import語句 119

         5.6.3  目錄層次關系及CLASSPATH環境變量 121

         5.6.4  訪問權限與數據隱藏 122

         5.6.5  封裝 123

5.7  類成員 124

         5.7.1  類變量 124

         5.7.2  類方法 126

5.8  final關鍵字 128

         5.8.1  終極類 128

         5.8.2  終極方法 129

         5.8.3  終極變量 130

5.9  抽象類 131

5.10  接口 133

         5.10.1  接口的定義 133

         5.10.2  接口的實現 134

5.11  內部類 137

         5.11.1  內部類的概念 137

         5.11.2  匿名類 139

         5.11.3  內部類的工作方式 140

5.12  包裝類 141

習題 142

第6章  Java語言中的異常 145

6.1  異常 145

         6.1.1  引出異常 145

         6.1.2  異常的概念 147

         6.1.3  異常分類 148

6.2  異常處理 149

         6.2.1  try-catch塊 150

         6.2.2  再討論前面的示例 152

         6.2.3  公共異常 153

6.3  拋出異常 154

6.4  創建自己的異常 155

習題 157

第7章  Java語言的高級特性 158

7.1  泛型 158

         7.1.1  泛型數據類型 158

         7.1.2  接口中的泛型 158

         7.1.3  泛型類 159

         7.1.4  泛型方法 161

7.2  迭代器 162

         7.2.1  迭代器的基本概念 162

         7.2.2  Iterator接口 162

         7.2.3  Iterable接口 164

         7.2.4  使用迭代器示例 164

         7.2.5  Iterable和for-each循環 167

7.3  克隆 168

習題 176

第8章  Java的圖形用戶界面設計 178

8.1  AWT與Swing 178

8.2  容器 179

         8.2.1  頂層容器 179

         8.2.2  使用JFrame創建應用程序 180

         8.2.3  內容窗格 181

         8.2.4  面板 182

8.3  佈局 183

         8.3.1  一個簡單的示例 183

         8.3.2  FlowLayout佈局管理器 185

         8.3.3  BorderLayout佈局管理器 186

         8.3.4  GridLayout佈局管理器 188

         8.3.5  CardLayout佈局管理器 190

         8.3.6  BoxLayout佈局管理器 192

         8.3.7  其他佈局管理器 197

8.4  事件處理 198

         8.4.1  事件處理模型 198

         8.4.2  事件的種類 200

         8.4.3  一個較復雜的示例 202

         8.4.4  多監聽程序 204

         8.4.5  事件適配器 205

習題 206

第9章  Swing組件 208

9.1  按鈕 208

         9.1.1  普通按鈕 208

         9.1.2  切換按鈕、復選框及單選按鈕 212

9.2  標簽 218

9.3  組合框 221

9.4  列表 223

9.5  文本組件 229

         9.5.1  文本域 229

         9.5.2  文本區 234

9.6  菜單組件 236

         9.6.1  菜單欄 237

         9.6.2  菜單 237

         9.6.3  菜單項 238

         9.6.4  復選菜單項和單選菜單項 239

         9.6.5  彈出式菜單 242

9.7  對話框、標準對話框與文件對話框 245

         9.7.1  對話框 245

         9.7.2  標準對話框 246

         9.7.3  文件對話框 250

9.8  控制組件外觀 253

         9.8.1  顏色 253

         9.8.2  字體 254

         9.8.3  繪圖 256

習題 260

第10章  Java Applet 261

10.1  編寫Applet 263

10.2  Applet的方法和Applet的生命周期 265

10.3  Applet的運行 266

     10.3.1  用於顯示Applet的方法 266

     10.3.2  appletviewer 268

     10.3.3  HTML與<applet>標記 268

     10.3.4  Applet參數的讀取 270

     10.3.5  Applet與URL 271

10.4  Applet中的多媒體處理 272

     10.4.1  在Applet中顯示圖像 272

     10.4.2  在Applet中播放聲音 273

10.5  Applet的事件處理 275

10.6  Applet與普通應用程序的結合 276

習題 278

第11章  Java數據流 279

11.1  數據流的基本概念 279

     11.1.1  輸入數據流 280

     11.1.2  輸出數據流 281

11.2  基本字節數據流類 282

     11.2.1  文件數據流 282

     11.2.2  過濾流 284

     11.2.3  管道數據流 285

     11.2.4  對象流 287

     11.2.5  可持久化 288

11.3  基本字符流 291

     11.3.1  讀者和寫者 291

     11.3.2  緩沖區讀者和緩沖區寫者 292

11.4  文件的處理 296

     11.4.1  File類 296

     11.4.2  隨機訪問文件 299

習題 299

第12章  線程 301

12.1  線程和多線程 301

     12.1.1  線程的概念 301

     12.1.2  線程的結構 302

12.2  線程的狀態 303

12.3  線程的創建 304

     12.3.1  創建線程的方法一——繼承Thread類 305

     12.3.2  創建線程的方法二——實現Runnable接口 307

     12.3.3  關於兩種創建線程方法的討論 309

12.4  線程的啟動 310

12.5  線程的調度 310

12.6  線程的基本控制 312

     12.6.1  結束線程 312

     12.6.2  檢查線程 312

     12.6.3  掛起線程 312

12.7  同步問題 313

     12.7.1  線程間的通信 313

     12.7.2  線程間的資源互斥共享 315

     12.7.3  對象的鎖定標志 317

     12.7.4  同步方法 318

12.8  死鎖 319

12.9  線程交互——wait()和notify() 321

     12.9.1  問題的提出 321

     12.9.2  解決方法 322

     12.9.3  守護線程 323

     12.9.4  綜合應用 324

習題 329

第13章  Java的網絡功能 330

13.1  概述 330

13.2  使用InetAddress 332

13.3  統一資源定位器 333

     13.3.1  URL的概念 333

     13.3.2  URL的構造方法 334

     13.3.3  與URL相關的異常 335

     13.3.4  獲取URL對象屬性 335

     13.3.5  讀入URL數據 336

13.4  Socket接口 339

     13.4.1  Socket的基本概念 340

     13.4.2  Socket通信的基本步驟 341

     13.4.3  Socket通信的程序設計 342

13.5  Java編程綜合實例 344

習題 351

參考文獻 352

  

  

·X·

·III·