本書對Java編程原理、基礎知識、核心技術進行了由淺入深、循序漸進的介紹。全書共13章,包括Java概述、Java程序的結構及類型、Java語言基礎、抽象和封裝、繼承和多態(tài)、Java核心類、圖形用戶界面、輸入輸出流、JDBC數據庫連接、Java異常處理、并發(fā)編程基礎、Java與Java Web以及課程設計綜合案例。書中重要知識點都與案例緊密結合,有助于讀者理解知識、掌握知識、應用知識。本書內容邏輯順序安排合理,講解淺顯易懂,有學習方法指導、典型案例作為參考,非常實用。
本書可以作為高等院校計算機相關專業(yè)的教材,也可以作為相關技術人員和Java愛好者自學的參考書。
Java從1995年誕生發(fā)展到現在,成為目前流行的程序設計語言之一,特別是隨著互聯(lián)網、人工智能、大數據、物聯(lián)網技術的迅猛發(fā)展,Java也與時俱進,不斷推出新版本、增加新特征,以適應時代發(fā)展的要求。
多年教學過程中,作者選用過多部同類教材,這些教材有的內容充實、知識新穎,有的案例豐富、講解生動,但針對學生特點和有限的課時,這些教材又或多或少顯現出不適宜之處,要么內容太多太深,教學課時不夠,學生難以接受; 要么雖案例豐富但與生產實踐結合不緊密,內容講解也不夠完整、系統(tǒng),知識點邏輯結構編排不合理,不便學生構建科學的知識體系。針對這些問題,作者結合多年來的Java教學經驗和開發(fā)體會,結合企業(yè)需求,在參考了國內外同類優(yōu)秀教材,并與多名從事本課程教學的教師研究后,確定教材編寫內容、編寫風格,編寫了本書。與同類教材相比,本書具有以下幾個顯著特點:
(1) 內容精練、系統(tǒng)。Java是一門新型技術,是很多學科都用到的技術,其包含很多內容,為在有限的時間內將基礎的、關鍵的知識介紹給讀者,在內容組織上進行了嚴格的篩選和控制。教材建設過程中,為確保全書深度廣度適中,采用循序漸進、從易到難的方法組織教材內容,介紹相關知識。對書中的重難點理論知識和關鍵實踐操作,對應部分給出微課視頻講解和演示二維碼。
(2) 體現直觀實用、易學、易教的編寫理念。Java程序設計一直被認為是比較難教和難學的一門專業(yè)基礎課,本書編寫時,遵從學生的認知規(guī)律,將抽象的Java技術盡量同比較直觀的、與生活實際密切聯(lián)系的實例結合起來,所以組織教材內容時,針對每個知識點,精選典型的、新穎的、有趣的學科前沿應用實例,通過實例介紹,讓學生對其Java特點形成比較深刻的感性認識,從而帶著好奇去探究其深入的原理及應用,達到學生易學、教師易教的目的。
(3) 教材按一體化形式編寫,突出能力培養(yǎng)。主要體現在教材編寫過程中,將理論講解和技能操作融為一體,以工程問題為導向,通過工程問題激發(fā)學生探索興趣。特別關注編程在科學和工程中的應用,涵蓋包括人臉識別、語音信號分析、網絡應用等不同領域的工程問題,將理論講解和技能操作融為一體,在講授編程方法的同時注重培養(yǎng)計算思維,為深度學習專業(yè)領域知識奠定基礎。在介紹每個知識點時,先設問題,再介紹知識點,最后總結使用該知識點解決問題的具體實現過程,強調學生實踐能力、思考能力和創(chuàng)新能力的培養(yǎng)。
(4) 教材結構統(tǒng)一完整。 每章由教學重難點提示、教學內容講解、應用實例、本章歸納總結、習題與實踐等部分組成。這樣不僅有理論介紹,還有相應的練習,為進一步理解和掌握抽象知識提供了保障。
全書共13章。第1章介紹了Java語言的發(fā)展、特點、工作原理、運行環(huán)境的建立; 第2章通過案例介紹了Java程序的兩種基本模式的結構及應用; 第3章介紹了Java編程基礎語法; 第4章講解了類的抽象、封裝、包及訪問控制、內部類等; 第5章詳細講述了繼承、多態(tài),非訪問控制符、接口等概念及應用; 第6章詳細介紹了Java常用的基礎類與集合類的使用; 第7章介紹了Java圖形用戶界面中Java SE的Swing組件、AWT組件事件處理模型、布局管理器等; 第8章介紹了Java中輸入輸出流的使用及文件的操作; 第9章詳細介紹了Java通過JDBC連接、訪問數據庫的過程; 第10章介紹了Java的異常處理機制; 第11章介紹了多線程和網絡編程; 第12章通過案例介紹了Java與Java Web的關系; 第13章通過一個完整的案例開發(fā),詳細講解應用Java開發(fā)應用程序的方法和過程。
本書由段新娥、張志旺擔任主編,負責整體結構的設計和全書的統(tǒng)稿定稿; 張志東、周鎖成擔任副主編。具體編寫分工如下: 第1、9章由段新娥編寫,第2章由王紅梅編寫,第3章由張志東編寫,第4章由曾照華編寫,第5章由周鎖成編寫,第6章由朱智磊編寫,第7章由張學峰編寫,第8章由劉紅梅編寫,第10章由張敬環(huán)編寫,第11章由康云香編寫,第12章由冀庚編寫,第13章由張志旺編寫。
為便于教學,本書提供豐富的配套資源,包括教學課件、教學大綱、課程設計指導、習題答案、程序源碼、微課視頻、在線作業(yè)。
資源下載提示
課件等資源: 掃描封底的圖書資源二維碼,在公眾號書圈下載。
習題答案: 掃描課后習題旁的二維碼,可以獲取答案。
視頻等資源: 掃描封底的文泉云盤防盜碼,再掃描書中相應章節(jié)的二維碼,可以在線學習。
在線作業(yè): 掃描封底的作業(yè)系統(tǒng)二維碼,登錄網站在線做題及查看答案。
本書在編寫過程中,得到許多同仁的支持,同時也參考了大量的書籍,在此向廣大同仁和所有參考書籍的作者表示衷心的感謝。
由于時間倉促,加之作者水平有限,書中難免存在疏漏和不妥之處,敬請讀者批評指正。
段新娥2025年1月
第1章Java概述
1.1Java語言的發(fā)展及特點
1.1.1Java的發(fā)展歷程
1.1.2Java語言的特點
1.1.3Java平臺與應用
1.2Java工作原理
1.2.1Java程序運行機制
1.2.2JVM、JRE和JDK
1.3Java運行環(huán)境
1.3.1JDK下載和安裝
1.3.2JDK的目錄
1.3.3JDK環(huán)境變量配置
1.3.4Java API文檔的下載與使用
1.4開始編寫Java程序
1.4.1第一個Java應用程序
1.4.2程序分析
1.4.3JShell交互式編程環(huán)境
1.5集成開發(fā)工具
1.5.1Eclipse的下載、安裝
1.5.2Eclipse的設置
1.5.3使用Eclipse開發(fā)Java項目的基本過程
1.6典型案例分析
1.6.1命令行顯示詩句
1.6.2桌面小游戲
1.7本章小結
課后習題
拓展閱讀
第2章Java程序的結構及類型
2.1Java程序的類型
2.1.1Java程序的兩種模式
2.1.2兩種模式的結構特征
2.2Java Application及其應用
2.2.1Java Application實現命令行輸入輸出
2.2.2Java Application實現圖形用戶界面輸入輸出
2.3Java Applet及其應用
2.3.1Java Applet的特點和工作原理
2.3.2Java Applet的應用
2.4典型案例分析
2.4.1使用輸入對話框計算貸款到期還款數
2.4.2使用Java Applet實現加法運算
2.4.3使用Java Applet實現畫圓
2.5本章小結
課后習題
Java語言程序設計復雜工程問題求解
目錄
第3章Java語言基礎
3.1Java程序的構成
3.1.1Java程序的基本結構
3.1.2Java程序的編碼規(guī)則
3.2Java數據類型、常量和變量
3.2.1數據類型
3.2.2常量
3.2.3變量
3.3Java運算符、表達式、控制結構
3.3.1運算符
3.3.2表達式
3.3.3Java結構控制語句
3.4數組
3.4.1數組的聲明和創(chuàng)建
3.4.2數組元素的引用
3.4.3數組應用
3.4.4數組Array類
3.5典型案例
3.5.1人臉識別
3.5.2實現橋牌隨機發(fā)牌
3.6本章小結
課后習題
拓展閱讀
第4章抽象和封裝
4.1類與對象
4.1.1面向對象程序設計與面向過程程序設計
4.1.2類與對象的理解
4.1.3類的定義
4.1.4對象的實例化
4.1.5構造函數
4.1.6方法的重載
4.2靜態(tài)變量與靜態(tài)方法
4.2.1靜態(tài)變量
4.2.2靜態(tài)方法
4.2.3靜態(tài)代碼塊
4.3包及訪問控制
4.3.1包及其使用
4.3.2訪問控制
4.3.3類、數據成員和方法的訪問控制
4.4內部類
4.4.1成員內部類
4.4.2靜態(tài)內部類
4.4.3匿名內部類
4.4.4局部內部類
4.5類的關系
4.5.1關聯(lián)關系
4.5.2組合關系
4.5.3聚合關系
4.5.4依賴關系
4.6典型案例分析
4.6.1設計不同品牌汽車并顯示信息
4.6.2指紋識別
4.6.3銀行信息管理系統(tǒng)應用程序
4.7本章小結
課后習題
拓展閱讀
第5章繼承和多態(tài)
5.1繼承
5.1.1繼承的基本概念
5.1.2Java 繼承的實現
5.1.3方法覆蓋
5.1.4成員隱藏
5.2多態(tài)
5.2.1多態(tài)概念的理解
5.2.2Java中的多態(tài)
5.3非訪問控制符
5.3.1static
5.3.2abstract
5.3.3final
5.4接口
5.4.1接口概念的理解
5.4.2接口的定義
5.4.3接口的應用
5.5典型案例分析
5.5.1不同類別消費人員購物收費處理
5.5.2學生上網賬單管理應用程序
5.5.3銀行賬戶管理
5.5.4動物的生活習性顯示
5.6本章小結
課后習題
拓展閱讀
第6章Java核心類
6.1Java基礎類庫
6.1.1Scanner類
6.1.2String類與StringBuffer類
6.1.3Math類和Random類
6.1.4日期類
6.2Java集合類
6.2.1Collection
6.2.2List
6.2.3Set
6.2.4Map
6.3典型案例分析
6.3.1輸入字符串以原字符串倒序輸出
6.3.2根據出生日期求現在年齡
6.4本章小結
課后習題
第7章圖形用戶界面
7.1圖形用戶界面的構成
7.2容器和基本組件
7.2.1Swing概述
7.2.2容器
7.2.3組件
7.2.4簡單的Swing程序
7.3布局管理器
7.3.1BorderLayout邊布局管理器
7.3.2FlowLayout流布局管理器
7.3.3CardLayout布局(卡片疊式布局)管理器
7.3.4GridLayout網格布局管理器
7.3.5JPanel類及容器的嵌套
7.4事件處理
7.4.1事件處理模型
7.4.2事件類和事件監(jiān)聽器接口
7.4.3事件處理的基本步驟
7.4.4事件適配器及注冊事件監(jiān)聽器
7.5JavaFX圖形用戶界面工具
7.5.1JavaFX簡介
7.5.2配置JavaFX開發(fā)環(huán)境
7.5.3Eclipse中JavaFX Scene Builder的安裝及配置
7.5.4JavaFX基礎入門
7.6典型案例分析
7.6.1登錄界面設計
7.6.2系統(tǒng)主界面設計
7.7本章小結
課后習題
拓展閱讀
第8章輸入輸出流
8.1流
8.1.1流的定義和作用
8.1.2流的存在
8.2流的分類
8.2.1基本字節(jié)流
8.2.2基本字符流
8.3文件操作
8.3.1文件操作類
8.3.2文件過濾器接口
8.3.3文件對話框組件
8.3.4隨機存取文件類
8.4應用實例
8.4.1一個文本編輯界面
8.4.2統(tǒng)計文件字符數、行數
8.5本章小結
課后習題
第9章JDBC數據庫連接
9.1JDBC概述
9.2JDBC訪問數據庫
9.2.1JDBC訪問數據庫的方法
9.2.2JDBC訪問數據庫的基本過程
9.2.3JDBC連接實例
9.3JDBC的常用類與接口
9.3.1DriverManager類
9.3.2Connection接口
9.3.3Statement和PreparedStatement接口
9.3.4ResultSet接口
9.4使用連接池訪問數據庫
9.5典型案例分析
9.5.1圖書信息查詢
9.5.2賬戶登錄信息處理
9.5.3圖書信息處理
9.6本章小結
課后習題
第10章Java異常處理
10.1異常概述
10.1.1異常及其分類
10.1.2Java中異常機制的原理
10.2異常處理
10.2.1Java異常處理模型
10.2.2用throws聲明異常
10.2.3用throw拋出異常
10.2.4用try和catch捕獲異常
10.2.5finally語句
10.2.6異常捕獲處理語法規(guī)則
10.3自定義異常
10.4典型案例分析
10.4.1打開不存在的文件
10.4.2銀行賬戶取錢異常處理
10.5本章小結
課后習題
第11章并發(fā)編程基礎
11.1Java多線程簡介
11.1.1進程與線程的概念
11.1.2進程與線程的關系
11.2Java中如何實現多線程
11.2.1通過繼承Thread類實現多線程
11.2.2通過繼承Runnable接口實現多線程
11.2.3線程對象的狀態(tài)、調度與生命周期
11.2.4線程的同步機制
11.3Java網絡編程
11.3.1網絡基本概念
11.3.2URL編程
11.3.3Java語言實現底層網絡通信
11.4典型案例分析
11.4.1火車票售票模擬程序
11.4.2建立醫(yī)生和患者之間的雙向對話
11.5本章小結
課后習題
第12章Java與Java Web
12.1Java Web概述
12.2Java Web運行與開發(fā)環(huán)境的安裝與配置
12.3典型案例
12.3.1JSP技術開發(fā)舉例
12.3.2例121程序改進
12.4本章小結
第13章課程設計綜合案例
13.1需求分析
13.2系統(tǒng)設計
13.2.1系統(tǒng)功能結構
13.2.2構建開發(fā)環(huán)境
13.2.3數據庫設計
13.2.4文件夾組織結構
13.3系統(tǒng)實現
13.3.1公共模塊
13.3.2登錄模塊設計
13.3.3主窗體設計
13.4系統(tǒng)測試
13.4.1讀者管理模塊
13.4.2圖書信息模塊
13.4.3借還模塊
13.4.4設置模塊
13.4.5報表模塊
13.5本章小結
參考文獻