Java從小白到大牛

Java從小白到大牛

《Java從小白到大牛》 是關東升編著的,一部系統論述Java程式語言與編程方法的立體化教程(含紙質圖書、電子書、教學課件、原始碼與視頻教程)。

內容簡介

本書是一部系統論述Java程式語言與編程方法的立體化教程(含紙質圖書、電子書、教學課件、原始碼與視頻教程)。全書共分為四篇:第一篇為Java基礎(第1章~第10章),第二篇為面向對象編程(第11章~第18章),第三篇為Java進階(第19章~第28章),第四篇為Java項目實戰(第29章~第30章)。書中主要內容包括:開篇綜述;開發環境搭建;第一個Java程式;Java語法基礎;Java編碼規範;數據類型;運算符;控制語句;數組;字元串;面向對象基礎;對象;繼承與多態;抽象類與接口;枚舉類;Java常用類;內部類;Java 8函式式編程基礎——Lambda表達式;異常處理;對象容器——集合;泛型;檔案管理與IO流;多執行緒編程;網路編程;Swing圖形用戶界面編程;反射;註解;資料庫編程。全書最後還給出了兩個實戰項目——項目實戰1:開發PetStore寵物商店項目;項目實戰2:開發Java版QQ2006聊天工具。

為便於讀者高效學習,快速掌握Java編程方法。本書作者精心製作了電子書、完整的教學課件、完整的原始碼與豐富的配套視頻教程(超過2800分鐘)以及線上答疑服務等內容。

目錄

第1章 開篇綜述

1.1 Java語言歷史

1.2 Java語言特點

1.3 Java平台

1.3.1 Java SE

1.3.2 Java EE

1.3.3 Java ME

1.4 Java虛擬機

第2章 開發環境搭建

2.1 JDK工具包

2.1.1 JDK下載和安裝

2.1.2 設定環境變數

2.2 Eclipse開發工具

2.2.1 Eclipse下載和安裝

2.2.2 安裝中文語言包

2.2.3 Eclipse界面

2.2.4 Windows系統中常用快捷鍵

2.3 其他開發工具

2.3.1 IntelliJ IDEA

2.3.2 NetBeans IDE

2.3.3 文本編輯工具

第3章 第一個Java程式

3.1 使用Eclipse實現

3.1.1 創建項目

3.1.2 創建類

3.1.3 運行程式

3.2 文本編輯工具+JDK實現

3.2.1 編寫原始碼檔案

3.2.2 編譯程式

3.2.3 運行程式

3.3 代碼解釋

第4章 Java語法基礎

4.1 標識符、關鍵字和保留字

4.1.1 標識符

4.1.2 關鍵字

4.1.3 保留字

4.2 Java分隔設定

4.3 變數

4.4 常量

第5章 Java編碼規範

5.1 命名規範

5.2 注釋規範

5.2.1 檔案注釋

5.2.2 文檔注釋

5.2.3 代碼注釋

5.2.4 使用地標註釋

5.3 代碼排版

5.3.1 空行

5.3.2 空格

5.3.3 縮進

5.3.4 斷行

5.4 其他規範

第6章 數據類型

6.1 基本數據類型

6.2 整型類型

6.3 浮點類型

6.4 數字表示方式

6.4.1 進制數字表示

6.4.2 指數表示

6.5 字元類型

6.6 布爾類型

6.7 數值類型相互轉換

6.7.1 自動類型轉換

6.7.2 強制類型轉換

6.8 引用數據類型

第7章 運算符

7.1 算術運算符

7.1.1 一元運算符

7.1.2 二元運算符

7.1.3 算術賦值運算符

7.2 關係運算符

7.3 邏輯運算符

7.4 位運算符

7.5 其他運算符

7.6 運算符優先權

第8章 控制語句

8.1 分支語句

8.1.1 if語句

8.1.2 switch語句

8.2 循環語句

8.2.1 while語句

8.2.2 do-while語句

8.2.3 for語句

8.2.4 增強for語句

8.3 跳轉語句

8.3.1 break語句

8.3.2 continue語句

本章小結

第9章 數組

9.1 一維數組

9.1.1 數組聲明

9.1.2 數組初始化

9.1.3 案例:數組合併

9.2 多維數組

9.2.1 二維數組聲明

9.2.2 二維數組的初始化

9.2.3 不規則數組

第10章 字元串

10.1 Java中的字元串

10.2 使用API文檔

10.3 不可變字元串

10.3.1 String

10.3.2 字元串池

10.3.3 字元串拼接

10.3.4 字元串查找

10.3.5 字元串比較

10.3.6 字元串截取

10.4 可變字元串

10.4.1 StringBuffer和StringBuilder

10.4.2 字元串追加

10.4.3 字元串插入、刪除和替換

第11章 面向對象基礎

11.1 面向對象概述

11.2 面向對象三個基本特性

11.2.1 封裝性

11.2.2 繼承性

11.2.3 多態性

11.3 類

11.3.1 類聲明

11.3.2 成員變數

11.3.3 成員方法

11.4 包

11.4.1 包作用

11.4.2 包定義

11.4.3 包引入

11.4.4 常用包

11.5 方法重載(Overload)

11.6 封裝性與訪問控制

11.6.1 私有級別

11.6.2 默認級別

11.6.3 公有級別

11.6.4 保護級別

11.7 靜態變數和靜態方法

11.8 靜態代碼塊

第12章 對象

12.1 創建對象

12.2 空對象

12.3 構造方法

12.3.1 默認構造方法

12.3.2 構造方法重載

12.3.3 構造方法封裝

12.4 this關鍵字

12.5 對象銷毀

第13章 繼承與多態

13.1 Java中的繼承

13.2 調用父類構造方法

13.3 變數隱藏和方法覆蓋

13.3.1 變數隱藏

13.3.2 方法的覆蓋

13.4 多態

13.4.1 多態概念

13.4.2 引用類型檢查

13.4.3 引用類型轉換

13.5 再談final關鍵字

13.5.1 final修飾變數

13.5.2 final修飾類

13.5.3 final修飾方法

第14章 抽象類與接口

14.1 抽象類

14.1.1 抽象類概念

14.1.2 抽象類聲明和實現

14.2 使用接口

14.2.1 接口概念

14.2.2 接口聲明和實現

14.2.3 接口與多繼承

14.2.4 接口繼承

14.2.5 Java 8新特性默認方法和靜態方法

14.3 抽象類與接口區別

第15章 枚舉類

15.1 枚舉概述

15.2 枚舉類聲明

15.2.1 最簡單形式的枚舉類

15.2.2 枚舉類中成員變數和成員方法

15.2.3 枚舉類構造方法

15.3 枚舉常用方法

第16章 Java常用類

16.1 Java根類——Object

16.1.1 toString()方法

16.1.2 對象比較方法

16.2 包裝類

16.2.1 數值包裝類

16.2.2 Character類

16.2.3 Boolean類

16.2.4 自動裝箱/拆箱

16.3 Math類

16.4 大數值

16.4.1 BigInteger

16.4.2 BigDecimal

16.5 日期時間相關類

16.5.1 Date類

16.5.2 日期格式化和解析

16.5.3 Calendar類

16.6 Java 8新日期時間相關類

16.6.1 時間和日期

16.6.2 日期格式化和解析

第17章 內部類

17.1 內部類概述

17.1.1 內部類的作用

17.1.2 內部類的分類

17.2 成員內部類

17.2.1 實例內部類

17.2.2 靜態內部類

17.3 局部內部類

17.4 匿名內部類

第18章 Java 8函式式編程基礎——Lambda表達式

18.1 Lambda表達式概述

18.1.1 從一個示例開始

18.1.2 Lambda表達式實現

18.1.3 函式式接口

18.2 Lambda表達式簡化形式

18.2.1 省略參數類型

18.2.2 省略參數小括弧

18.2.3 省略return和大括弧

18.3 作為參數使用Lambda表達式

18.4 訪問變數

18.4.1 訪問成員變數

18.4.2 捕獲局部變數

18.5 方法引用

第19章 異常處理

19.1 從一個問題開始

19.2 異常類繼承層次

19.2.1 Throwable類

19.2.2 Error和Exception

19.2.3 受檢查異常和運行時異常

19.3 捕獲異常

19.3.1 try-catch語句

19.3.2 多catch代碼塊

19.3.3 try-catch語句嵌套

19.3.4 多重捕獲

19.4 釋放資源

19.4.1 finally代碼塊

19.4.2 自動資源管理

19.5 throws與聲明方法拋出異常

19.6 自定義異常類

19.7 throw與顯式拋出異常

第20章 對象容器——集合

20.1 集合概述

20.2 List集合

20.2.1 常用方法

20.2.2 遍歷集合

20.3 Set集合

20.3.1 常用方法

20.3.2 遍歷集合

20.4 Map集合

20.4.1 常用方法

20.4.2 遍歷集合

第21章 泛型

21.1 一個問題的思考

21.2 使用泛型

21.3 自定義泛型類

21.4 自定義泛型接口

21.5 泛型方法

第22章 檔案管理與I/O流

22.1 檔案管理

22.1.1 File類

22.1.2 案例:檔案過濾

22.2 I/O流概述

22.2.1 Java流設計理念

22.2.2 流類繼承層次

22.3 位元組流

22.3.1 InputStream抽象類

22.3.2 OutputStream抽象類

22.3.3 案例:檔案複製

22.3.4 使用位元組緩衝流

22.4 字元流

22.4.1 Reader抽象類

22.4.2 Writer抽象類

22.4.3 案例:檔案複製

22.4.4 使用字元緩衝流

22.4.5 位元組流轉換字元流

第23章 多執行緒編程

23.1 基礎知識

23.1.1 進程

23.1.2 執行緒

23.1.3 主執行緒

23.2 創建子執行緒

23.2.1 實現Runnable接口

23.2.2 繼承Thread執行緒類

23.2.3 使用匿名內部類和Lambda表達式實現執行緒體

23.3 執行緒的狀態

23.4 執行緒管理

23.4.1 執行緒優先權

23.4.2 等待執行緒結束

23.4.3 執行緒讓步

23.4.4 執行緒停止

23.5 執行緒安全

23.5.1 臨界資源問題

23.5.2 多執行緒同步

23.6 執行緒間通信

第24章 網路編程

24.1 網路基礎

24.1.1 網路結構

24.1.2 TCP/IP協定

24.1.3 IP位址

24.1.4 連線埠

24.2 TCP Socket低層次網路編程

24.2.1 TCP Socket通信概述

24.2.2 TCP Socket通信過程

24.2.3 Socket類

24.2.4 ServerSocket類

24.2.5 案例:檔案上傳工具

24.2.6 案例:聊天工具

24.3 UDP Socket低層次網路編程

24.3.1 DatagramSocket類

24.3.2 DatagramPacket類

24.3.3 案例:檔案上傳工具

24.3.4 案例:聊天工具

24.4 數據交換格式

24.4.1 JSON文檔結構

24.4.2 使用第三方JSON庫

24.4.3 JSON數據編碼和解碼

24.4.4 案例:聊天工具

24.5 訪問網際網路資源

24.5.1 URL概念

24.5.2 HTTP/HTTPS協定

24.5.3 使用URL類

24.5.4 使用HttpURLConnection傳送GET請求

24.5.5 使用HttpURLConnection傳送POST請求

24.5.6 實例:Downloader

第25章 Swing圖形用戶界面編程

25.1 Java圖形用戶界面技術

25.2 Swing技術基礎

25.2.1 Swing類層次結構

25.2.2 Swing程式結構

25.3 事件處理模型

25.3.1 採用內部類處理事件

25.3.2 採用Lambda表達式處理事件

25.3.3 使用適配器

25.4 布局管理

25.4.1 FlowLayout布局

25.4.2 BorderLayout布局

25.4.3 GridLayout布局

25.4.4 不使用布局管理器

25.4.5 使用可視化設計工具

25.5 Swing組件

25.5.1 標籤和按鈕

25.5.2 文本輸入組件

25.5.3 複選框和單選按鈕

25.5.4 下拉列表

25.5.5 列表

25.5.6 分隔面板

25.5.7 使用表格

25.6 案例:圖書庫存

第26章 反射

26.1 Java反射機制API

26.1.1 java.lang.Class類

26.1.2 java.lang.reflect包

26.2 創建對象

26.2.1 調用構造方法

26.2.2 案例:依賴注入實現

26.3 調用方法

26.4 調用成員變數

第27章 註解(Annotation)

27.1 基本註解

27.1.1 @Override

27.1.2 @Deprecated

27.1.3 @SuppressWarnings

27.1.4 @SafeVarargs

27.1.5 @FunctionalInterface

27.2 元註解

27.3 自定義註解

27.3.1 聲明註解

27.3.2 案例:使用元註解

27.3.3 案例:讀取運行時註解信息

第28章 資料庫編程

28.1 數據持久技術概述

28.2 MySQL資料庫管理系統

28.2.1 資料庫安裝與配置

28.2.2 連線MySQL伺服器

28.2.3 常見的管理命令

28.3 JDBC技術

28.3.1 JDBC API

28.3.2 載入驅動程式

28.3.3 建立數據連線

28.3.4 三個重要接口

28.4 案例:數據CRUD操作

28.4.1 資料庫編程一般過程

28.4.2 數據查詢操作

28.4.3 數據修改操作

第29章 項目實戰1:開發PetStore寵物商店項目

29.1 系統分析與設計

29.1.1 項目概述

29.1.2 需求分析

29.1.3 原型設計

29.1.4 資料庫設計

29.1.5 架構設計

29.1.6 系統設計

29.2 任務1:創建資料庫

29.2.1 疊代1.1:安裝和配置MySQL資料庫

29.2.2 疊代1.2:編寫資料庫DDL腳本

29.2.3 疊代1.3:插入初始數據到資料庫

29.3 任務2:套用並初始化項目

29.3.1 任務2.1:配置項目構建路徑

29.3.2 任務2.2:添加資源圖片

29.3.3 任務2.3:添加包

29.4 任務3:編寫數據持久層代碼

29.4.1 任務3.1:編寫實體類

29.4.2 疊代3.2:編寫DAO類

29.4.3 疊代3.3:資料庫幫助類DBHelper

29.5 任務4:編寫表示層代碼

29.5.1 疊代4.1:編寫啟動類

29.5.2 疊代4.2:編寫自定義視窗類——MyFrame

29.5.3 疊代4.3:用戶登錄視窗

29.5.4 疊代4.4:商品列表視窗

29.5.5 疊代4.5:商品購物車視窗

29.6 任務5:應用程式打包發布

29.6.1 疊代5.1:處理TODO、FIXME和XXX任務

29.6.2 疊代5.2:處理警告

29.6.3 疊代5.3:打包

第30章 項目實戰2:開發Java版QQ2006聊天工具

30.1 系統分析與設計

30.1.1 項目概述

30.1.2 需求分析

30.1.3 原型設計

30.1.4 資料庫設計

30.1.5 網路拓撲圖

30.1.6 系統設計

30.2 任務1:創建伺服器端資料庫

30.2.1 疊代1.1:安裝和配置MySQL資料庫

30.2.2 疊代1.2:編寫資料庫DDL腳本

30.2.3 疊代1.3:插入初始數據到資料庫

30.3 任務2:套用並初始化項目

30.3.1 任務2.1:配置項目構建路徑

30.3.2 任務2.2:添加資源圖片

30.3.3 任務2.3:添加JSON-java庫

30.3.4 任務2.4:添加包

30.4 任務3:編寫伺服器端外圍代碼

30.1.1 任務3.1:編寫UserDAO類

30.1.2 疊代3.2:資料庫幫助類DBHelper

30.1.3 任務3.3:編寫ClientInfo類

30.5 任務4:客戶端UI實現

30.2.1 疊代4.1:登錄視窗實現

30.2.2 疊代4.2:好友列表視窗實現

30.2.3 疊代4.3:聊天視窗實現

30.6 任務5:用戶登錄過程實現

30.3.1 疊代5.1:客戶端啟動

30.3.2 疊代5.2:客戶端登錄編程

30.3.3 疊代5.3:伺服器啟動

30.3.4 疊代5.4:伺服器驗證編程

30.7 任務6:用戶登錄刷新好友列表

30.4.1 疊代6.1:用戶登錄刷新好友列表伺服器端編程

30.4.2 疊代6.2:用戶登錄刷新好友列表客戶端編程

30.8 任務7:聊天過程實現

30.5.1 疊代7.1:客戶端用戶1向用戶3傳送訊息

30.5.2 疊代7.2:伺服器接收用戶1訊息與轉發給用戶3訊息

30.5.3 疊代7.3:客戶端用戶3接收用戶1訊息

30.9 任務8:用戶下線刷新好友列表過程

30.6.1 疊代8.1:客戶端編程

30.6.2 疊代8.2:伺服器端編程

相關詞條

熱門詞條

聯絡我們