描述
Java最強入門邁向頂尖高手之路
王者歸來 第二版
本書特色
相較於第一版這一版新增下列內容:
- 更完整解說輸入與輸出
- 溫度轉換與高斯數學
- 生肖系統程式
- 火箭升空程式
- 圓周率
- 雞兔同籠
- 國王的麥粒
- 線性搜尋
- 計算器
- 基礎統計
- 最基礎的JavaFX入門
- 其他修訂約50處
很早就想改版第一版的書籍,歷經多時的醞釀與投入,終於完成這本書著作的改版,心情是愉快的,因為我相信只要讀者購買本書遵循本書實例,一定可以輕輕鬆鬆快快樂樂學會Java語法與應用,逐步讓自己往Java頂尖高手之路邁進,這也是撰寫本書的目的。
這本Java書將是國內講解Java內容最完整的書籍,全書有32個章節,以約407張彩色圖解說明,677個彩色程式實例,講解了下列知識:
- 完整解說物件導向程式設計
- 類別與物件
- 物件建構與封裝
- 繼承與多形
- Math和Random類別
- 日期與時間類別
- 字元與字串類別
- Object類別
- 抽象類別與介面
- Java包裝類別
- 大型程式設計
- 正規表達式與文字探勘
- 程式異常處理
- 多執行緒,同時簡單說明馬、兔子、烏龜賽跑實例
- 完整解說匿名陣列、匿名方法與匿名類別
- Lambda表達式
- Java的工廠方法
- 檔案輸入與輸出
- 壓縮與解壓縮檔案設計
- 解說Java Collection
- 使用Java Collection處理簡易資料結構的知識
- 現代Java運算
- 使用AWT設計視窗程式
- 事件處理
- 使用Swing設計視窗程式
- 繪圖與動畫
- 網路程式設計
- 簡易網路聊天室設計
- JavaFX最基礎解說
作者簡介
洪錦魁
一位跨越電腦作業系統與科技時代的電腦專家,著作等身的作家。
- DOS時代他的代表作品是IBM PC組合語言、C、C++、Pascal、資料結構。
- Windows時代他的代表作品是Windows Programming使用C、Visual Basic。
- Internet時代他的代表作品是網頁設計使用HTML。
- 大數據時代他的代表作品是R語言邁向Big Data之路。
除了作品被翻譯為簡體中文、馬來西亞文外,2000年作品更被翻譯為Mastering HTML英文版行銷美國,近年來作品則是在北京清華大學和台灣深智同步發行:
1:Java最強入門邁向頂尖高手之路王者歸來
2:Python最強入門邁向頂尖高手之路王者歸來
3:Python最強入門邁向數據科學之路王者歸來
4:Python網路爬蟲:大數據擷取、清洗、儲存與分析王者歸來
5:演算法最強彩色圖鑑 + Python程式實作王者歸來
6:網頁設計HTML+CSS+JavaScript+jQuery+Bootstrap+Google Map 王者歸來
7:機器學習彩色圖解 + 基礎數學篇 + Python實作王者歸來
8:R語言邁向Big Data之路
9:Excel完整學習邁向最強職場應用王者歸來
他的近期著作分別登上天瓏、博客來、Momo電腦書類暢銷排行榜第一名,他的著作最大的特色是,所有程式語法會依特性分類,同時以實用的程式範例做解說,讓整本書淺顯易懂,讀者可以由他的著作事半功倍輕鬆掌握相關知識。
目錄
第一章 基本觀念
1-1 認識Java
1-2 Java 的起源
1-3 Java 之父
1-4 Java 發展史
1-5 Java 的三大平台
1-6 認識Java SE 平台的JDK/JRE/JVM
1-7 Java 跨平台原理
1-8 Java 語言的特色
第二章 Java 程式從零開始
2-1 我的第一個Java 程式
2-2 解析Java 的程式結構
2-3 程式註解
第三章 Java 語言基礎
3-1 認識變數(Variable)
3-2 基本資料型態(Primitive Data Types)
3-3 字串(String) 資料型態
3-4 常數(Constant) 的觀念
3-5 精準控制格式化的輸出
第四章 程式基本運算
4-1 程式設計的專有名詞
4-2 指定運算子的特殊用法說明
4-3 基本數學運算
4-4 複合指定運算子(Compound Assignment Operator)
4-5 布林運算、反向運算、比較運算與邏輯運算
4-6 位元運算(Bitwise Operation)
4-7 Java 運算子優先順序
4-8 資料型態的轉換(Data Type Conversion)
4-9 資料的轉換與輸入
4-10 淺談import 與java.lang 套件
4-11 程式敘述的結合與分行
4-12 專題- 溫度轉換/ 高斯數學
第五章 程式流程控制
5-1 if 敘述
5-2 switch 敘述
5-3 專題-BMI/ 生肖/ 火箭升空
第六章 迴圈控制
6-1 for 迴圈
6-2 巢狀for 迴圈
6-3 while 迴圈
6-4 巢狀while 迴圈
6-5 do ⋯ while 迴圈
6-6 無限迴圈
6-7 迴圈與break 敘述
6-8 迴圈與continue 敘述
6-9 迴圈標籤與break/continue
6-10 將迴圈觀念應用在Scanner 類別的輸入檢查
6-11 迴圈相關的程式應用
6-12 專題 圓周率/ 雞兔同籠/ 國王的麥粒
第七章 陣列
7-1 認識陣列(Array)
7-2 陣列的宣告與應用
7-3 Java 參照資料型態(Reference Data Types)
7-4 Java 垃圾回收(Garbage Collection)
7-5 多維陣列的原理
7-6 Java 命令列參數
7-7 二維陣列的程式應用
7-8 專題 線性搜尋/ 計算器
第八章 類別與物件
8-1 認識物件與類別
8-2 定義類別與物件
8-3 類別的基本實例
8-4 類別含多個物件的應用
8-5 類別的參照資料型態
8-6 再談方法(method)
8-7 變數的有效範圍
8-8 匿名陣列(Anonymous Array)
8-9 遞迴式方法設計recursive
8-10 河內塔問題
第九章 物件建構與封裝
9-1 建構方法(Constructor)
9-2 類別的訪問權限 – 封裝(Encapsulation)
9-3 static 關鍵字
第十章 內建Math 和Random 類別
10-1 數學常數
10-2 隨機數的應用
10-3 求較大值max( )/ 較小值方法min( )
10-4 求絕對值方法abs( )
10-5 四捨五入round( )
10-6 返回最接近的整數值rint( )
10-7 求近似值ceil( )/floor( )
10-8 一般的數學運算方法
10-9 三角函數的應用
10-10 Random 類別
10-11 專題 使用Math 模組與經緯度計算地球任意兩點的距離
第十一章 日期與時間的類別
11-1 Date 類別
11-2 Java 8 後的新日期與時間類別
第十二章 字元與字串類別
12-1 字元Character 類別
12-2 字串的建立
12-3 String 類別的方法
12-4 StringBuffer 類別
12-5 StringBuilder 類別
12-6 字串陣列的應用
第十三章 正規表達式Regular Expression
13-1 使用Java 硬功夫搜尋文字
13-2 使用String 類別處理正規表達式次數區間
13-3 正規表達式的特殊字元
13-4 matches( ) 方法的萬用程式與功能擴充
13-5 再談String 類別有關的正規表達方法
13-6 正規表達式套件
第十四章 繼承與多形
14-1 繼承(Inheritance)
14-2 IS-A 和HAS-A 關係
14-3 Java 程式碼太長的處理
14-4 重新定義(Override)
14-5 多重定義(Overload) 父類別的方法
14-6 多形(Polymorphism)
14-7 靜態綁定(Static Binding) 與動態綁定(Dynamic Binding)
14-8 巢狀類別(Nested classes)
第十五章 Object 類別
15-1 認識擴充Object 類別
15-2 Object 類別的方法
15-3 認識哈希碼(hashcode) 與hashCode( )
15-4 equals( ) 方法
15-5 toString( ) 方法
15-6 getClass( ) 方法
第十六章 抽象類別(Abstract Class)
16-1 使用抽象類別的場合
16-2 抽象類別基本觀念
16-3 抽象方法的基本觀念
16-4 抽象類別與抽象方法觀念整理
16-5 抽象類別的建構方法
16-6 使用Upcasting 宣告抽象類別的物件
16-7 抽象類別與方法的程式應用
第十七章 介面(Interface)
17-1 認識介面
17-2 介面的成員變數
17-3 Java 8 新增加介面內容
17-4 Java 9 新增加介面內容
17-5 基本介面的繼承
17-6 介面多重繼承(Multiple Inheritance)
17-7 實作時發生成員變數有相同名稱
17-8 類別重新定義Default 方法
17-9 一個類別同時繼承類別與實作介面
17-10 類別分別繼承父類別與實作介面發生方法名稱衝突
17-11 多層次繼承中發生Default 方法名稱相同
17-12 名稱衝突的鑽石(Diamond) 問題
第十八章 Java 包裝(Wrapper) 類別
18-1 基本觀念
18-2 認識包裝類別
18-3 認識自動封箱(Autoboxing) 與拆箱(Unboxing)
18-4 建立包裝類別物件
18-5 使用valueOf( ) 建立物件
18-6 取得Number 類別物件的值
18-7 包裝類別的常數
18-8 將基本資料轉成字串toString( )
18-9 將字串轉成基本資料型態parseXXX( )
18-10 比較方法
第十九章 設計套件(Package)
19-1 複習套件名稱的匯入
19-2 設計Java 套件基礎知識
19-3 Java 套件的優點
19-4 建立、編譯與執行套件
19-5 套件與應用程式分屬不同資料夾
19-6 建立子套件
19-7 套件的存取控制
19-8 將介面應用在套件
19-9 將編譯檔案送至不同資料夾的方法
第二十章 程式異常的處理
20-1 認識程式錯誤的類別
20-2 認識簡單的異常實例
20-3 處理異常方法
20-4 try-catch
20-5 捕捉上層的異常
20-6 try/catch/finally
20-7 Throwable 類別
20-8 自行拋出異常throw
20-9 方法拋出異常throws
20-10 使用者自訂異常類別
第二十一章 多執行緒
21-1 認識程式(Program)、行程(Process)、執行緒(Thread)
21-2 認識多工作業(Multitasking)
21-3 Java 的多執行緒
21-4 執行緒的生命週期
21-5 建立執行緒
21-6 再看Java 執行緒的工作原理
21-7 讓執行緒進入睡眠
21-8 執行緒的join( ) 方法
21-9 執行緒的優先順序值
21-10 守護(Daemon) 執行緒
21-11 Java 的同步(Synchronization)
21-12 匿名類別(Anonymous Class)
21-13 同步區塊(Synchronized Block)
21-14 同步靜態方法(Sychronized Static Methods)
21-15 認識死結Deadlock
21-16 執行緒內部通信(Inter-thread communication)
第二十二章 輸入與輸出
22-1 認識串流(Stream)
22-2 InputStream 和OutputStream 類別圖
22-3 適用byte 資料檔案輸入與輸出
22-4 使用緩衝區處理byte 資料檔案輸入與輸出
22-5 Writer 和Reader 類別
22-6 字元讀取與寫入FileReader 類別與FileWriter 類別
22-7 字元資料輸入與輸出BufferedReader/BufferedWriter
22-8 System 類別
22-9 PrintStream 類別
22-10 Console 類別
22-11 檔案與資料夾的管理File 類別
第二十三章 壓縮與解壓縮檔案
23-1 基本觀念與認識java.util.zip 套件
23-2 壓縮(Zip) 檔案
23-3 解壓縮(Unzip) 檔案
第二十四章 Java Collection
24-0 認識泛型Generic
24-1 認識集合物件
24-2 List 介面
24-3 Set 介面
24-4 Map 介面
24-5 Java Collections Framework 架構之演算法
第二十五章 現代Java 運算
25-1 增強版的匿名內部類別
25-2 Lambda 表達式
25-3 forEach( )
25-4 方法參照(method references)
25-5 Java 的工廠方法(Factory Methods)
25-6 Java 新的版本字串格式
第二十六章 視窗程式設計使用AWT
26-1 AWT 類別結構圖
26-2 Frame 類別
26-3 視窗元件顏色的設定Color 類別
26-4 標籤Label 類別
26-5 字型設定Font 類別
26-6 Button 類別
26-7 建立文字輸入物件
26-8 Checkbox 類別
26-9 CheckboxGroup 類別
26-10 版面配置管理員(LayoutManagers)
第二十七章 事件處理
27-1 委派事件模式(Delegation event model)
27-2 簡單按鈕事件處理
27-3 認識事件處理類別
27-4 ActionEvent 事件類別
27-5 ItemEvent 類別
27-6 TextEvent 類別
27-7 KeyEvent 類別
27-8 KeyAdapter 類別
27-9 MouseEvent 類別
27-10 WindowEvent 類別
27-11 WindowAdapter 類別
第二十八章 再談AWT 物件
28-1 表單List 類別
28-2 下拉式選單Choice 類別
28-3 功能表設計
28-4 捲軸Scrollbar 類別
28-5 對話方塊Dialog 類別
28-6 檔案對話方塊FileDialog 類別
第二十九章 視窗程式設計使用Swing
29-1 SQLite 基本觀念.
29-2 資料庫連線
29-3 SQLite 資料類型
29-4 建立SQLite 資料庫表單
29-5 增加SQLite 資料庫表單紀錄
29-6 查詢SQLite 資料庫表單
29-7 更新SQLite 資料庫表單紀錄
29-8 刪除SQLite 資料庫表單紀錄
29-9 DB Browser for SQLite
29-10 將台北人口數儲存SQLite 資料庫
29-11 MySQL 資料庫
第三十章 繪圖與動畫
30-1 認識座標系統
30-2 AWT 繪圖
30-3 Swing 繪圖
30-4 顏色與字型
30-5 Graphics 類別與Graphics2D 類別
30-6 Graphics2D 類別
30-7 專題拖曳滑鼠可以繪製線條
30-8 動畫設計6-12 enumerate 物件
第三十一章 網路程式設計
31-1 認識Internet 網址
31-2 Java InetAddress 類別
31-3 URL 類別
31-4 URLConnection 類別
31-5 HttpURLConnection 類別
31-6 主從架構(Client-Server) 程式設計基本觀念
31-7 UDP 通訊
第三十二章 JavaFX 最基礎解說
32-1 使用JavaFX 建立系列簡單的Java視窗程式
32-2 Pane 容器方格
32-3 Pane 的佈局
附錄A Java 下載、安裝與環境設定
A-1 下載Java
A-2 安裝Java
A-3 Java 環境設定
附錄B 函數或方法索引表
附錄C 關鍵字或專有名詞索引表8-6 元組切片(tuple slices)
序
Java最強入門邁向頂尖高手之路
王者歸來 第二版
相較於第一版這一版新增下列內容:
- 更完整解說輸入與輸出
- 溫度轉換與高斯數學
- 生肖系統程式
- 火箭升空程式
- 圓周率
- 雞兔同籠
- 國王的麥粒
- 線性搜尋
- 計算器
- 基礎統計
- 最基礎的JavaFX入門
- 其他修訂約50處
過去20年Java可以說是電腦領域最重要的程式語言之一,幾乎所有資訊領域的學生、程式設計師皆需學習這個程式語言。除了課堂教學,這個語言也進入了我們的生活,例如:智慧手機、網路遊戲、汽車導航、家電應用 … 等皆可以看到Java的蹤跡。
很早就想改版第一版的書籍,歷經多時的醞釀與投入,終於完成這本書著作的改版,心情是愉快的,因為我相信只要讀者購買本書遵循本書實例,一定可以輕輕鬆鬆快快樂樂學會Java語法與應用,逐步讓自己往Java頂尖高手之路邁進,這也是撰寫本書的目的。
這本Java書將是國內講解Java內容最完整的書籍,全書有32個章節,以約407張彩色圖解說明,677個彩色程式實例,講解了下列知識:
- 完整解說物件導向程式設計
- 類別與物件
- 物件建構與封裝
- 繼承與多形
- Math和Random類別
- 日期與時間類別
- 字元與字串類別
- Object類別
- 抽象類別與介面
- Java包裝類別
- 大型程式設計
- 正規表達式與文字探勘
- 程式異常處理
- 多執行緒,同時簡單說明馬、兔子、烏龜賽跑實例
- 完整解說匿名陣列、匿名方法與匿名類別
- Lambda表達式
- Java的工廠方法
- 檔案輸入與輸出
- 壓縮與解壓縮檔案設計
- 解說Java Collection
- 使用Java Collection處理簡易資料結構的知識
- 現代Java運算
- 使用AWT設計視窗程式
- 事件處理
- 使用Swing設計視窗程式
- 繪圖與動畫
- 網路程式設計
- 簡易網路聊天室設計
- JavaFX最基礎解說
全書附有專有名詞和方法索引表,有了這個索引表,未來讀者可以隨時查詢,快速方便,您會發現這將是學習Java的寶典。
寫過許多的電腦書著作,本書沿襲筆者著作的特色,程式實例豐富,相信讀者只要遵循本書內容必定可以在最短時間精通Java物件導向程式設計,編著本書雖力求完美,但是學經歷不足,謬誤難免,尚祈讀者不吝指正。
洪錦魁2020-09-30
臉書粉絲團
歡迎加入:王者歸來電腦專業圖書系列
讀者資源說明
本書籍的所有程式實例與偶數編號的實作題解答,可以在深智公司網站下載。
本書前25章節均附是非與選擇的電子書與習題解答,這些可以在深智公司網站下載。
教學資源說明
如果您是學校老師同時使用本書教學,歡迎與本公司聯繫,本公司將提供教學投影片與完整的實作題習題解答。請老師聯繫時提供任教學校、科系、Email、和手機號碼,以方便本公司業務單位協助您。