本書基于Java 17以項目教學的方式,圍繞一個進銷存管理系統(tǒng)綜合實戰(zhàn)案例循序漸進地講解Java程序設(shè)計的基本原理和具體應用的方法與技巧。全書分為10個項目,具體內(nèi)容為:Java開發(fā)環(huán)境和工具、面向?qū)ο缶幊袒A(chǔ)、面向?qū)ο蠛诵募夹g(shù)、異常處理、圖形用戶界面設(shè)計、GUI事件處理、I/O操作、網(wǎng)絡編程基礎(chǔ)、多線程技術(shù)、訪問數(shù)據(jù)庫等內(nèi)容。本書附有電子資料,內(nèi)容為書中所有實例的源文件及相關(guān)資源以及實例操作過程錄屏動畫,供讀者學習中使用。
蘇紹培,男,副教授,現(xiàn)任四川科技職業(yè)學院互聯(lián)網(wǎng)+學院教學院長。參加工作以來一直從事教學與管理工作,曾講授課程:C語言程序設(shè)計、PHP編程、C#.NET編程、移動開發(fā)、HTML5、CSS3樣式、javaScript編程、JAVA編程、二維動畫、Photoshop圖像處理、 MS-SQL / My-SQL 等數(shù)據(jù)庫、計算機網(wǎng)絡、Linux、服務器配置管理、操作系統(tǒng)、數(shù)字媒體AE、電子商務等課程的講授與應用開發(fā)。
項目一 Java開發(fā)環(huán)境和工具 1
任務一 初識Java開發(fā) 2
任務引入 2
知識準備 2
一、Java的特性與應用領(lǐng)域 2
二、Java開發(fā)的學習路線 3
三、認識、安裝JDK 4
四、配置環(huán)境變量 7
五、Java程序的開發(fā)流程 8
六、使用Java API文檔 9
任務二 使用Eclipse開發(fā)Java程序 10
任務引入 10
知識準備 10
一、安裝配置Eclipse 10
二、開發(fā)Java程序 12
三、導入項目文件 15
四、為項目添加常用類庫 16
五、程序調(diào)試 17
項目總結(jié) 18
項目實戰(zhàn) 18
項目二 面向?qū)ο缶幊袒A(chǔ) 20
任務一 類與對象 21
任務引入 21
知識準備 21
一、面向?qū)ο蠛喗?21
二、類的聲明與定義 22
三、構(gòu)造方法 23
四、對象的創(chuàng)建及使用 25
五、調(diào)用本類結(jié)構(gòu) 27
六、定義全局屬性和方法 28
任務二 使用數(shù)組 30
任務引入 30
知識準備 31
一、創(chuàng)建數(shù)組 31
二、初始化數(shù)組 33
三、遍歷數(shù)組 33
四、使用Arrays工具類 34
任務三 處理字符串 37
任務引入 37
知識準備 37
一、創(chuàng)建String類的字符串 37
二、String類的常用操作 38
三、正則表達式 42
四、創(chuàng)建StringBuffer對象 44
五、StringBuffer類的常用方法 45
項目總結(jié) 48
項目實戰(zhàn) 48
項目三 面向?qū)ο缶幊毯诵募夹g(shù) 52
任務一 繼承與多態(tài) 53
任務引入 53
知識準備 53
一、實現(xiàn)繼承 53
二、方法重寫 54
三、操作隱藏的父類成員 55
四、使用final關(guān)鍵字 57
五、使用方法重載實現(xiàn)多態(tài) 57
六、對象向上轉(zhuǎn)型 59
任務二 抽象類與接口 62
任務引入 62
知識準備 62
一、抽象類與抽象方法 62
二、聲明與實現(xiàn)接口 63
任務三 內(nèi)部類 65
任務引入 65
知識準備 65
一、成員內(nèi)部類 66
二、局部內(nèi)部類 67
三、靜態(tài)內(nèi)部類 68
四、匿名內(nèi)部類 69
五、Lambda表達式 70
項目總結(jié) 72
項目實戰(zhàn) 72
項目四 異常處理 77
任務一 認識異常 78
任務引入 78
知識準備 78
一、異常的類型 78
二、常見的異常類 80
三、異常處理流程 81
四、Exception類的常用方法 82
任務二 處理異常 83
任務引入 83
知識準備 83
一、處理編譯異常 83
二、在方法中拋出異常 84
三、自定義異常類 86
項目總結(jié) 89
項目實戰(zhàn) 89
項目五 圖形用戶界面設(shè)計 94
任務一 初識Java Swing 95
任務引入 95
知識準備 95
一、Swing概述 95
二、容器 96
三、組件 96
任務二 創(chuàng)建常用容器與布局 97
任務引入 97
知識準備 97
一、JFrame窗口 97
二、JDialog對話框 99
三、JPanel面板 100
四、JScrollPane滾動面板 100
五、布局管理器 100
任務三 使用常用組件 104
任務引入 104
知識準備 104
一、標簽組件 104
二、文本組件 106
三、按鈕組件 108
四、列表組件 111
項目總結(jié) 115
項目實戰(zhàn) 116
項目六 GUI事件處理 122
任務一 認識事件處理機制 123
任務引入 123
知識準備 123
一、事件處理模式 123
二、事件類 124
任務二 常用事件 125
任務引入 125
知識準備 125
一、窗口事件(WindowEvent) 125
二、事件適配器(Adapter) 127
三、鼠標事件(MouseEvent) 128
四、鍵盤事件(KeyEvent) 130
五、動作事件(ActionEvent) 132
六、選項事件(ItemEvent) 134
七、焦點事件(FocusEvent) 139
八、文檔事件(DocumentEvent) 141
項目總結(jié) 144
項目實戰(zhàn) 144
項目七 I/O操作 151
任務一 使用File類操作文件和目錄 152
任務引入 152
知識準備 152
一、創(chuàng)建File對象 152
二、獲取文件屬性 153
三、創(chuàng)建和刪除文件 155
四、創(chuàng)建和刪除文件夾 157
五、遍歷目錄 158
任務二 讀/寫文件內(nèi)容 160
任務引入 160
知識準備 160
一、流的概念 160
二、文件字節(jié)流 161
三、文件字符流 163
四、緩沖數(shù)據(jù)流 166
五、隨機流 167
項目總結(jié) 170
項目實戰(zhàn) 170
項目八 網(wǎng)絡編程基礎(chǔ) 174
任務一 網(wǎng)絡程序設(shè)計基礎(chǔ) 175
任務引入 175
知識準備 175
一、網(wǎng)絡應用程序設(shè)計模式 175
二、常用的網(wǎng)絡協(xié)議 175
三、IP地址和端口 176
任務二 實現(xiàn)TCP網(wǎng)絡程序 177
任務引入 177
知識準備 178
一、實現(xiàn)服務器端程序 178
二、實現(xiàn)客戶端程序 179
三、數(shù)據(jù)交互通信 180
任務三 實現(xiàn)UDP網(wǎng)絡程序 183
任務引入 183
知識準備 183
一、打包發(fā)送數(shù)據(jù)報 183
二、接收數(shù)據(jù)報 184
項目總結(jié) 189
項目實戰(zhàn) 190
項目九 多線程技術(shù) 202
任務一 實現(xiàn)Java多線程 203
任務引入 203
知識準備 203
一、進程與線程 203
二、線程的狀態(tài) 203
三、繼承Thread類創(chuàng)建多線程 204
四、實現(xiàn)Runnable接口創(chuàng)建多線程 206
任務二 應用多線程 208
任務引入 208
知識準備 208
一、線程的常用方法 208
二、實現(xiàn)線程同步 210
三、協(xié)調(diào)同步的線程 212
四、GUI線程 215
項目總結(jié) 217
項目實戰(zhàn) 217
項目十 訪問數(shù)據(jù)庫 221
任務一 SQL語法基礎(chǔ) 222
任務引入 222
知識準備 222
一、select語句 222
二、insert語句 223
三、update語句 223
四、delete語句 224
任務二 使用JDBC訪問數(shù)據(jù)庫 224
任務引入 224
知識準備 225
一、JDBC概述 225
二、部署JDBC驅(qū)動程序 225
三、連接數(shù)據(jù)庫 227
四、操作數(shù)據(jù)庫 229
項目總結(jié) 236
項目實戰(zhàn) 237