出版時(shí)間:2013-4 出版社:清華大學(xué)出版社
內(nèi)容概要
辛運(yùn)幃、饒一梅、馬素霞編著的《Java程序設(shè)計(jì)》從Java語言的基本特點(diǎn)入手,全面介紹Java語言的基本概念和編程方法,并深入介紹Java語言的高級(jí)特性。書中內(nèi)容涉及Java語言中的基本語法、數(shù)據(jù)類型、類、異常、界面設(shè)計(jì)、小應(yīng)用程序、I/O數(shù)據(jù)流、線程及網(wǎng)絡(luò)功能等,基本覆蓋了Java語言的大部分實(shí)用技術(shù),是進(jìn)一步使用Java語言進(jìn)行技術(shù)開發(fā)的基礎(chǔ)。
《Java程序設(shè)計(jì)》內(nèi)容詳盡,實(shí)例豐富,在每章最后均列出了若干習(xí)題,以方便教學(xué)。本書適合作為高等學(xué)校教材,也可作為專業(yè)人員的參考書。
與本書配套的《Java程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》(第三版)中提供了本書的習(xí)題解答及有關(guān)實(shí)驗(yàn)。
書籍目錄
1 概述 1.1 什么是Java語言1 1.1.1 Java語言的特點(diǎn)2 1.1.2 Java的三層架構(gòu)3 1.1.3 Java語言的目標(biāo)4 1.1.4 Java虛擬機(jī)4 1.1.5 垃圾收集5 1.1.6 代碼安全5 1.2 一個(gè)基本的Java應(yīng)用程序8 1.2.1 開發(fā)環(huán)境的安裝8 1.2.2 Java應(yīng)用程序9 1.3 程序的編譯和運(yùn)行11 1.3.1 編譯11 1.3.2 運(yùn)行11 1.4 常見錯(cuò)誤12 1.4.1 編譯時(shí)錯(cuò)誤12 1.4.2 運(yùn)行時(shí)錯(cuò)誤13 1.5 使用Java核心API文檔14 習(xí)題172 標(biāo)識(shí)符和數(shù)據(jù)類型 2.1 Java的基本語法單位18 2.1.1 空白、注釋及語句18 2.1.2 關(guān)鍵字20 2.1.3 標(biāo)識(shí)符20 2.2 Java編碼體例21 2.3 Java的基本數(shù)據(jù)類型22 2.3.1 基本數(shù)據(jù)類型22 2.3.2 類型轉(zhuǎn)換24 2.3.3 變量、說明和賦值25 2.4 復(fù)合數(shù)據(jù)類型26 2.4.1 概述26 2.4.2 Java的復(fù)合數(shù)據(jù)類型27 2.5 類和對(duì)象的初步介紹27 2.5.1 Java中的面向?qū)ο蠹夹g(shù)27 2.5.2 Java中的類定義29 2.5.3 Java中與OOP有關(guān)的關(guān)鍵字30 2.5.4 類定義示例33 2.5.5 創(chuàng)建一個(gè)對(duì)象35 2.5.6 引用變量的賦值38 2.5.7 自動(dòng)初始化和null引用值39 2.5.8 術(shù)語概述39 習(xí)題403 表達(dá)式和流程控制語句 3.1 表達(dá)式42 3.1.1 操作數(shù)42 3.1.2 運(yùn)算符46 3.1.3 表達(dá)式的提升和轉(zhuǎn)換48 3.1.4 數(shù)學(xué)函數(shù)51 3.2 流控制51 3.2.1 表達(dá)式語句51 3.2.2 塊52 3.2.3 分支語句52 3.2.4 循環(huán)語句57 3.2.5 break與continue語句60 3.2.6 注釋語句62 3.3 簡單的輸入輸出63 習(xí)題664 數(shù)組、向量和字符串 4.1 數(shù)組69 4.1.1 數(shù)組說明69 4.1.2 創(chuàng)建數(shù)組70 4.1.3 數(shù)組邊界73 4.1.4 數(shù)組元素的引用73 4.1.5 多維數(shù)組74 4.1.6 數(shù)組復(fù)制79 4.2 Vector類80 4.2.1 概述81 4.2.2 Vector類的構(gòu)造方法81 4.2.3 Vector類對(duì)象的操作82 4.2.4 Vector類中的其他方法83 4.2.5 Vector類的使用舉例84 4.3 字符串類型86 4.3.1 字符串簡述86 4.3.2 字符串說明及初始化86 4.3.3 字符串處理86 4.3.4 幾個(gè)特殊處理88 習(xí)題905 進(jìn)一步討論對(duì)象和類 5.1 抽象數(shù)據(jù)類型92 5.1.1 概述92 5.1.2 定義方法93 5.1.3 按值傳送96 5.1.4 重載方法名98 5.2 對(duì)象的構(gòu)造和初始化99 5.2.1 顯式成員初始化99 5.2.2 構(gòu)造方法99 5.2.3 默認(rèn)的構(gòu)造方法101 5.2.4 構(gòu)造方法重載101 5.2.5 finalize方法102 5.3 this引用103 5.4 子類103 5.4.1“is a”關(guān)系104 5.4.2 extends關(guān)鍵字105 5.4.3 單重繼承106 5.4.4 多態(tài)性108 5.4.5 方法自變量和異類集合108 5.4.6 instanceof運(yùn)算符109 5.4.7 轉(zhuǎn)換對(duì)象110 5.5 方法重寫111 5.5.1 方法重寫示例111 5.5.2 應(yīng)用重寫的規(guī)則115 5.5.3 父類構(gòu)造方法調(diào)用117 5.6 Java包118 5.6.1 Java包的概念118 5.6.2 import語句119 5.6.3 目錄層次關(guān)系及classpath環(huán)境變量120 5.6.4 訪問權(quán)限與數(shù)據(jù)隱藏122 5.6.5 封裝123 5.7 類成員124 5.7.1 類變量124 5.7.2 類方法126 5.8 關(guān)鍵字final128 5.8.1 終極類128 5.8.2 終極方法129 5.8.3 終極變量129 5.9 抽象類131 5.10 接口133 5.10.1 接口的定義133 5.10.2 接口的實(shí)現(xiàn)134 5.11 內(nèi)部類137 5.11.1 內(nèi)部類的概念137 5.11.2 匿名類139 5.11.3 內(nèi)部類的工作方式140 5.12 包裝類141 5.13 過時(shí)信息142 習(xí)題1456 Java語言中的異常 6.1 異常147 6.2 異常示例150 6.3 異常處理150 6.3.1 try, catch和finally語句151 6.3.2 再討論前面的示例151 6.3.3 公共異常152 6.4 異常分類153 6.5 拋出154 6.6 創(chuàng)建自己的異常154 習(xí)題1567 Java的圖形用戶界面設(shè)計(jì) 7.1 AWT與Swing157 7.2 容器158 7.2.1 頂層容器158 7.2.2 使用JFrame創(chuàng)建一個(gè)應(yīng)用程序159 7.2.3 內(nèi)容窗格159 7.2.4 面板161 7.3 布局162 7.3.1 一個(gè)簡單的例子162 7.3.2 FlowLayout布局管理器164 7.3.3 BorderLayout布局管理器166 7.3.4 GridLayout布局管理器167 7.3.5 CardLayout布局管理器169 7.3.6 BoxLayout布局管理器171 7.3.7 其他布局管理器176 7.4 事件處理177 7.4.1 事件處理模型177 7.4.2 事件的種類179 7.4.3 一個(gè)較復(fù)雜的例子181 7.4.4 多監(jiān)聽程序183 7.4.5 事件適配器183 習(xí)題1858 Swing組件 8.1 按鈕187 8.1.1 普通按鈕187 8.1.2 切換按鈕、復(fù)選按鈕及單選按鈕192 8.2 標(biāo)簽197 8.3 組合框200 8.4 列表203 8.5 文本組件208 8.5.1 文本域209 8.5.2 文本區(qū)213 8.6 菜單組件216 8.6.1 菜單欄216 8.6.2 菜單217 8.6.3 菜單項(xiàng)217 8.6.4 復(fù)選菜單項(xiàng)和單選菜單項(xiàng)219 8.6.5 彈出式菜單222 8.7 對(duì)話框、標(biāo)準(zhǔn)對(duì)話框與文件對(duì)話框225 8.7.1 對(duì)話框225 8.7.2 標(biāo)準(zhǔn)對(duì)話框226 8.7.3 文件對(duì)話框231 8.8 控制組件外觀234 8.8.1 顏色234 8.8.2 字體235 8.8.3 繪圖236 習(xí)題2409 Java Applet 9.1 編寫Applet244 9.2 Applet的方法和Applet的生命周期246 9.3 Applet的運(yùn)行247 9.3.1 用于顯示Applet的方法247 9.3.2 appletviewer249 9.3.3 HTML與〈applet〉標(biāo)記250 9.3.4 Applet參數(shù)的讀取251 9.3.5 Applet與URL253 9.4 在Applet中的多媒體處理254 9.4.1 在Applet中顯示圖像254 9.4.2 在Applet中播放聲音255 9.5 Applet的事件處理257 9.6 Applet與普通應(yīng)用程序的結(jié)合258 習(xí)題26010 Java數(shù)據(jù)流 10.1 數(shù)據(jù)流的基本概念261 10.1.1 輸入數(shù)據(jù)流262 10.1.2 輸出數(shù)據(jù)流263 10.2 基本字節(jié)數(shù)據(jù)流類264 10.2.1 文件數(shù)據(jù)流264 10.2.2 過濾流266 10.2.3 管道數(shù)據(jù)流268 10.2.4 對(duì)象流269 10.2.5 可持久化270 10.3 基本字符流273 10.3.1 讀者和寫者273 10.3.2 緩沖區(qū)讀者和緩沖區(qū)寫者275 10.4 文件的處理279 10.4.1 File類279 10.4.2 隨機(jī)訪問文件281 習(xí)題28211 線程 11.1 線程和多線程284 11.1.1 線程的概念284 11.1.2 線程的結(jié)構(gòu)285 11.2 線程的狀態(tài)286 11.3 創(chuàng)建線程287 11.3.1 創(chuàng)建線程的方法一--繼承Thread類288 11.3.2 創(chuàng)建線程的方法二--實(shí)現(xiàn)Runnable接口290 11.3.3 關(guān)于兩種創(chuàng)建線程方法的討論292 11.4 線程的啟動(dòng)293 11.5 線程的調(diào)度293 11.6 線程的基本控制295 11.6.1 結(jié)束線程295 11.6.2 檢查線程296 11.6.3 掛起線程296 11.7 同步問題298 11.7.1 線程間的通信298 11.7.2 線程間的資源互斥共享300 11.7.3 對(duì)象的鎖定標(biāo)志302 11.7.4 同步方法303 11.8 死鎖304 11.9 線程交互--wait()和notify()306 11.9.1 問題的提出306 11.9.2 解決方法307 11.9.3 守護(hù)線程308 11.9.4 綜合應(yīng)用309 習(xí)題31412 Java的網(wǎng)絡(luò)功能 12.1 概述316 12.2 使用InetAddress318 12.3 統(tǒng)一資源定位器319 12.3.1 URL的概念319 12.3.2 URL的構(gòu)造方法320 12.3.3 與URL相關(guān)的異常321 12.3.4 獲取URL對(duì)象屬性321 12.3.5 讀入U(xiǎn)RL數(shù)據(jù)322 12.4 Socket接口325 12.4.1 Socket的基本概念326 12.4.2 Socket通信的基本步驟328 12.4.3 Socket通信的程序設(shè)計(jì)328 12.5 Java編程綜合實(shí)例330 習(xí)題338參考文獻(xiàn)339
編輯推薦
辛運(yùn)幃、饒一梅、馬素霞編著的《Java程序設(shè)計(jì)》自2001年第一版問世,到現(xiàn)在已經(jīng)超過了10年。從這一點(diǎn)可以看出,Java語言仍具有足夠的吸引力,其生命力并沒有隨時(shí)間的推移而有絲毫的減弱,學(xué)習(xí)Java語言的人越來越多。同時(shí),由于技術(shù)的發(fā)展,Java語言的適用環(huán)境更加廣泛,新的應(yīng)用層出不窮。Java語言之所以這樣長盛不衰,一是因?yàn)槠浔姸嗉夹g(shù)特點(diǎn)與現(xiàn)今的應(yīng)用十分合拍,可以覆蓋大部分需求;二是因?yàn)椴粩嘤行掳姹締柺溃晟屏薐ava語言自身的功能。有了這兩點(diǎn),Java語言成為程序員首選的程序設(shè)計(jì)開發(fā)工具就順理成章了。
圖書封面
評(píng)論、評(píng)分、閱讀與下載