本書(shū)結(jié)合實(shí)例介紹了如何使用Java開(kāi)發(fā)面向?qū)ο髴?yīng)用軟件,重點(diǎn)介紹三層應(yīng)用軟件的開(kāi)發(fā)方法及相關(guān)技術(shù)。全書(shū)共19章,分為5部分,主要內(nèi)容包括面向?qū)ο笙嚓P(guān)的概念、面向?qū)ο蠹皹?gòu)件開(kāi)發(fā)方法、基于UML的系統(tǒng)分析與設(shè)計(jì)、業(yè)務(wù)邏輯層開(kāi)發(fā)、界面層開(kāi)發(fā)、數(shù)據(jù)層開(kāi)發(fā)、構(gòu)件設(shè)計(jì)與開(kāi)發(fā)、多線程與Web應(yīng)用軟件開(kāi)發(fā)等。
本書(shū)的重點(diǎn)不是介紹Java的基礎(chǔ)語(yǔ)法和類(lèi)庫(kù),而是培養(yǎng)讀者的系統(tǒng)開(kāi)發(fā)能力,因此需要讀者具有一定的編程基礎(chǔ),但并不特別強(qiáng)調(diào)讀者具有Java編程的經(jīng)驗(yàn)。本書(shū)在內(nèi)容安排上由淺入深,不具備Java編程經(jīng)驗(yàn)的讀者也可以從頭開(kāi)始學(xué)習(xí)。本書(shū)適合軟件工程專(zhuān)業(yè)的在校學(xué)生學(xué)習(xí),以增強(qiáng)軟件開(kāi)發(fā)能力和經(jīng)驗(yàn),為軟件工程課程的學(xué)習(xí)打下良好的基礎(chǔ)。本書(shū)也適合其他計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的學(xué)生更深入地學(xué)習(xí)Java開(kāi)發(fā)技術(shù)。
目錄
第1部分Java應(yīng)用系統(tǒng)開(kāi)發(fā)基礎(chǔ)
第1章面向?qū)ο笙到y(tǒng)開(kāi)發(fā)概述
1.1軟件生命周期
1.1.1需求獲取與分析
1.1.2軟件設(shè)計(jì)
1.1.3實(shí)現(xiàn)
1.1.4集成和部署
1.1.5運(yùn)行和維護(hù)
1.2軟件開(kāi)發(fā)方法
1.2.1傳統(tǒng)開(kāi)發(fā)方法
1.2.2面向?qū)ο箝_(kāi)發(fā)方法
1.2.3基于構(gòu)件的開(kāi)發(fā)方法
1.3面向?qū)ο蠹皹?gòu)件開(kāi)發(fā)中的基本概念
1.3.1面向?qū)ο?/p>
1.3.2類(lèi)與對(duì)象
1.3.3消息通信與對(duì)象交互
1.3.4封裝與信息隱藏
1.3.5服務(wù)與接口
1.3.6繼承與多態(tài)
1.3.7構(gòu)件
1.3.8包
本章小結(jié)
習(xí)題
第2章Java程序的運(yùn)行與開(kāi)發(fā)環(huán)境
2.1Java程序的運(yùn)行環(huán)境
2.2Java程序的編輯、編譯及運(yùn)行
2.3Java平臺(tái)體系
2.4集成開(kāi)發(fā)環(huán)境簡(jiǎn)介
2.5Eclipse安裝與環(huán)境介紹
2.5.1Eclipse的體系結(jié)構(gòu)
2.5.2Eclipse在Windows下的安裝
2.5.3Eclipse工作臺(tái)
2.6Eclipse環(huán)境下的項(xiàng)目開(kāi)發(fā)過(guò)程
2.6.1新建Java項(xiàng)目
2.6.2創(chuàng)建Java程序
2.6.3代碼輸入支持功能
2.6.4執(zhí)行Java程序
本章小結(jié)
習(xí)題
第3章Java使用初步
3.1Java應(yīng)用程序的組成元素
3.2基本數(shù)據(jù)類(lèi)型與表達(dá)式
3.2.1基本數(shù)據(jù)類(lèi)型
3.2.2變量與常量
3.2.3表達(dá)式
3.2.4類(lèi)型轉(zhuǎn)換
3.3控制流程語(yǔ)句
3.3.1選擇結(jié)構(gòu)
3.3.2循環(huán)結(jié)構(gòu)
3.4Java標(biāo)準(zhǔn)類(lèi)實(shí)例
3.4.1Math類(lèi)
3.4.2String類(lèi)
3.4.3System類(lèi)
3.4.4包裹類(lèi)
3.4.5JOptionPane類(lèi)
3.4.6Date類(lèi)和SimpleDateFormat類(lèi)
本章小結(jié)
習(xí)題
第4章自定義類(lèi)
4.1類(lèi)的聲明與使用
4.1.1類(lèi)的聲明
4.1.2對(duì)象的創(chuàng)建與引用
4.2屬性成員
4.2.1屬性成員聲明
4.2.2實(shí)例屬性與類(lèi)屬性
4.3方法成員
4.3.1方法成員聲明
4.3.2實(shí)例方法與類(lèi)方法
4.3.3帶參數(shù)的方法
4.3.4構(gòu)造方法
4.4其他常用方法
4.4.1toString()方法
4.4.2equals()方法
4.5內(nèi)部類(lèi)
4.6將類(lèi)組織成包
4.7使用Javadoc命令生成類(lèi)文檔
本章小結(jié)
習(xí)題
第5章數(shù)組及其應(yīng)用
5.1數(shù)組的概念
5.2對(duì)象數(shù)組
5.2.1用數(shù)組存儲(chǔ)對(duì)象
5.2.2在方法中返回對(duì)象
5.2.3在方法中返回對(duì)象數(shù)組
5.3二維數(shù)組
5.4數(shù)組的應(yīng)用
5.4.1查找
5.4.2增加及刪除元素
5.4.3排序
5.4.4在已排序的數(shù)組中查找
本章小結(jié)
習(xí)題
第2部分基于UML的系統(tǒng)分析與設(shè)計(jì)
第6章基于UML的系統(tǒng)分析
6.1統(tǒng)一建模語(yǔ)言UML
6.1.1UML的產(chǎn)生和發(fā)展
6.1.2UML的特點(diǎn)
6.2UML模型簡(jiǎn)介
6.2.1用例圖
6.2.2類(lèi)圖
6.2.3順序圖
6.2.4通信圖
6.2.5狀態(tài)圖
6.2.6構(gòu)件圖
6.2.7部署圖
6.3實(shí)例研究
6.3.1校內(nèi)書(shū)店管理系統(tǒng)業(yè)務(wù)簡(jiǎn)介
6.3.2用例建模
6.3.3對(duì)象建模
6.3.4動(dòng)態(tài)建模
本章小結(jié)
習(xí)題
第7章面向?qū)ο笤O(shè)計(jì)
7.1軟件體系結(jié)構(gòu)及其風(fēng)格
7.1.1軟件體系結(jié)構(gòu)的概念
7.1.2經(jīng)典的體系結(jié)構(gòu)風(fēng)格
7.1.3C/S與B/S體系結(jié)構(gòu)風(fēng)格
7.1.4分布式對(duì)象體系結(jié)構(gòu)風(fēng)格
7.2子系統(tǒng)分解
7.2.1水平方向的分解
7.2.2垂直方向的分解
7.3問(wèn)題域設(shè)計(jì)
7.3.1對(duì)分析類(lèi)圖進(jìn)行調(diào)整與細(xì)化
7.3.2將對(duì)象分組歸入子系統(tǒng)
7.3.3增加控制類(lèi)
7.4界面層設(shè)計(jì)
7.4.1界面設(shè)計(jì)方法和原則
7.4.2書(shū)店管理系統(tǒng)界面設(shè)計(jì)方案
7.5數(shù)據(jù)層設(shè)計(jì)
7.5.1數(shù)據(jù)庫(kù)設(shè)計(jì)
7.5.2數(shù)據(jù)訪問(wèn)類(lèi)設(shè)計(jì)
本章小結(jié)
習(xí)題
第3部分業(yè)務(wù)邏輯層開(kāi)發(fā)
第8章編寫(xiě)問(wèn)題域類(lèi)
8.1定義問(wèn)題域類(lèi)
8.1.1定義并測(cè)試Book類(lèi)
8.1.2定義并測(cè)試BookStore類(lèi)
8.1.3使用靜態(tài)變量和靜態(tài)方法
8.1.4編寫(xiě)自定義方法
8.1.5格式化輸出
8.1.6重載方法
8.2實(shí)現(xiàn)關(guān)聯(lián)關(guān)系
8.2.1校內(nèi)書(shū)店管理系統(tǒng)中的關(guān)聯(lián)關(guān)系
8.2.2實(shí)現(xiàn)BookStore與Bookshelf之間的關(guān)聯(lián)關(guān)系
8.3異常及其處理
8.3.1異常的概念
8.3.2異常處理
8.3.3生成異常對(duì)象
8.3.4telephone的數(shù)據(jù)驗(yàn)證
本章小結(jié)
習(xí)題
第9章繼承與多態(tài)
9.1類(lèi)的繼承
9.1.1私有屬性和方法的繼承
9.1.2隱藏和覆蓋
9.1.3有繼承時(shí)的構(gòu)造方法
9.2Object類(lèi)
9.3定義Customer類(lèi)及其子類(lèi)
9.3.1定義Customer類(lèi)并測(cè)試
9.3.2定義Customer類(lèi)的子類(lèi)并測(cè)試
9.4重寫(xiě)超類(lèi)方法
9.4.1添加和重寫(xiě)toString()方法
9.4.2重寫(xiě)和調(diào)用超類(lèi)方法
9.5塑型與多態(tài)
9.5.1塑型
9.5.2多態(tài)
本章小結(jié)
習(xí)題
第10章抽象類(lèi)與終結(jié)類(lèi)
10.1抽象類(lèi)與抽象方法
10.1.1抽象類(lèi)的定義
10.1.2抽象方法
10.2終結(jié)類(lèi)與終結(jié)方法
10.2.1終結(jié)類(lèi)
10.2.2終結(jié)方法
10.3定義Lease類(lèi)及其子類(lèi)
10.3.1定義初始的Lease類(lèi)
10.3.2處理日期
10.3.3向Lease類(lèi)中添加抽象方法
10.3.4定義Lease的子類(lèi)BookLease
10.3.5定義Lease的子類(lèi)DailyLease
10.3.6測(cè)試BookLease類(lèi)和DailyLease類(lèi)
10.4聲明及使用自定義異常
10.4.1定義DateInputException類(lèi)
10.4.2拋出自定義異常
10.4.3創(chuàng)建多個(gè)日租約對(duì)象
本章小結(jié)
習(xí)題
第11章接口及其應(yīng)用
11.1接口
11.1.1接口的概念
11.1.2定義接口
11.1.3實(shí)現(xiàn)接口
11.1.4接口與抽象類(lèi)的區(qū)別
11.2Java集合框架
11.2.1列表的定義與創(chuàng)建
11.2.2列表的標(biāo)準(zhǔn)方法
11.2.3Enumeration及Iterator類(lèi)
11.2.4泛型及其應(yīng)用
11.3面向接口編程
11.3.1面向接口編程的概念
11.3.2面向接口編程的優(yōu)點(diǎn)
11.3.3分析抽象Bookshelf的接口IContainable
11.3.4使用IContainable接口
本章小結(jié)
習(xí)題
第12章構(gòu)件及其應(yīng)用
12.1構(gòu)件的類(lèi)型與特性
12.1.1構(gòu)件的類(lèi)型
12.1.2構(gòu)件的特性
12.2構(gòu)件模型
12.2.1構(gòu)件模型的組成
12.2.2常見(jiàn)的構(gòu)件模型
12.3構(gòu)件設(shè)計(jì)
12.3.1構(gòu)件設(shè)計(jì)原則
12.3.2構(gòu)件設(shè)計(jì)的主要任務(wù)
12.3.3校內(nèi)書(shū)店管理系統(tǒng)中的可復(fù)用構(gòu)件設(shè)計(jì)
12.4構(gòu)件實(shí)現(xiàn)
12.4.1統(tǒng)計(jì)樣本接口實(shí)現(xiàn)
12.4.2統(tǒng)計(jì)構(gòu)件的實(shí)現(xiàn)
12.4.3報(bào)表構(gòu)件的實(shí)現(xiàn)
12.4.4綜合測(cè)試
12.4.5構(gòu)件打包
本章小結(jié)