0人評分過此書

Java SE 17 技術手冊

出版日期
2022
閱讀格式
PDF
書籍分類
學科分類
ISBN
9786263241435

本館館藏

借閱規則
當前可使用人數 30
借閱天數 14
線上看 0
借閱中 0
選擇分享方式

推薦本館採購書籍

您可以將喜歡的電子書推薦給圖書館,圖書館會參考讀者意見進行採購

讀者資料
圖書館
* 姓名
* 身分
系所
* E-mail
※ 我們會寄送一份副本至您填寫的Email中
電話
※ 電話格式為 區碼+電話號碼(ex. 0229235151)/ 手機格式為 0900111111
* 請輸入驗證碼
內容簡介:‧基於Java 17 LTS版本!涵蓋Java 15至17新特性
‧增加HTTP Client API介紹
‧作者十幾年實務教育訓練中,匯整學員遇到的觀念、實作、應用等問題的經驗集合。
‧必要時從Java SE API的原始碼分析,了解各語法在Java SE API中如何應用。
‧涵蓋Java 15至17的文字區塊、模式比對、record/sealed等新特性。
‧建議練習的範例提供Lab檔案,更能掌握練習重點。
‧IDE操作為本書教學內容之一,更能與實務結合。
  • 導讀
  • 1 Java平臺概論
    • 1.1 Java不只是語言
      • 1.1.1 前世今生
      • 1.1.2 三大平臺
      • 1.1.3 JCP與JSR
      • 1.1.4 Oracle JDK與OpenJDK
    • 1.2 JVM/JRE/JDK
      • 1.2.1 什麼是JVM?
      • 1.2.2 JRE與JDK
      • 1.2.3 下載、安裝JDK
      • 1.2.4 認識JDK安裝內容
  • 2 從JDK到IDE
    • 2.1 從“Hello,World”開始
      • 2.1.1 撰寫Java原始碼
      • 2.1.2 PATH是什麼?
      • 2.1.3 JVM(java)與classpath
      • 2.1.4 編譯器(javac)與classpath
    • 2.2 管理原始碼與位元碼檔案
      • 2.2.1 編譯器(javac)與sourcepath
      • 2.2.2 使用package管理類別
      • 2.2.3 使用import偷懶
    • 2.3 初探模組平臺系統
      • 2.3.1 JVM(java)與module-path
      • 2.3.2 編譯器(javac)與module-path
      • 2.3.3 編譯器(javac)與module-source-path
    • 2.4 使用IDE
      • 2.4.1 IDE專案管理基礎
      • 2.4.2 使用了哪個JRE?
      • 2.4.3 類別檔案版本
  • 3 基礎語法
    • 3.1 型態、變數與運算子
      • 3.1.1 型態
      • 3.1.2 變數
      • 3.1.3 運算子
      • 3.1.4 掌握型態
    • 3.2 流程控制
      • 3.2.1 if..else條件式
      • 3.2.2 switch條件式
      • 3.2.3 for迴圈
      • 3.2.4 while迴圈
      • 3.2.5 break、continue
    • 課後練習
  • 4 認識物件
    • 4.1 類別與實例
      • 4.1.1 定義類別
      • 4.1.2 使用標準類別
      • 4.1.3 物件指定與相等性
    • 4.2 基本型態包裹器
      • 4.2.1 包裹基本型態
      • 4.2.2 自動裝箱、拆箱
      • 4.2.3 自動裝箱、拆箱的內幕
    • 4.3 陣列物件
      • 4.3.1 陣列基礎
      • 4.3.2 操作陣列物件
      • 4.3.3 陣列複製
    • 4.4 字串物件
      • 4.4.1 字串基礎
      • 4.4.2 字串特性
      • 4.4.3 文字區塊
      • 4.4.4 原始檔編碼
      • 4.4.5 Java與Unicode
    • 4.5 查詢Java API文件
    • 課後練習
  • 5 物件封裝
    • 5.1 何謂封裝?
      • 5.1.1 封裝物件初始流程
      • 5.1.2 封裝物件操作流程
      • 5.1.3 封裝物件內部資料
    • 5.2 類別語法細節
      • 5.2.1 public權限修飾
      • 5.2.2 關於建構式
      • 5.2.3 建構式與方法重載
      • 5.2.4 使用this
      • 5.2.5 static類別成員
      • 5.2.6 不定長度引數
      • 5.2.7 內部類別
    • 課後練習
  • 6 繼承與多型
    • 6.1 何謂繼承?
      • 6.1.1 繼承共同行為與實作
      • 6.1.2 多型與is-a
      • 6.1.3 重新定義實作
      • 6.1.4 抽象方法、抽象類別
    • 6.2 繼承語法細節
      • 6.2.1 protected成員
      • 6.2.2 重新定義的細節
      • 6.2.3 再看建構式
      • 6.2.4 再看final關鍵字
      • 6.2.5 java.lang.Object
      • 6.2.6 關於垃圾收集
      • 6.2.7 再看抽象類別
    • 課後練習
  • 7 介面與多型
    • 7.1 何謂介面?
      • 7.1.1 使用介面定義行為
      • 7.1.2 行為的多型
      • 7.1.3 解決需求變化
    • 7.2 介面語法細節
      • 7.2.1 介面的預設
      • 7.2.2 匿名內部類別
      • 7.2.3 使用enum列舉常數
    • 課後練習
  • 8 例外處理
    • 8.1 語法與繼承架構
      • 8.1.1 使用try、catch
      • 8.1.2 例外繼承架構
      • 8.1.3 要抓還是要拋?
      • 8.1.4 貼心還是造成麻煩?
      • 8.1.5 認識堆疊追蹤
      • 8.1.6 關於assert
    • 8.2 例外與資源管理
      • 8.2.1 使用finally
      • 8.2.2 自動嘗試關閉資源
      • 8.2.3 java.lang.AutoCloseable介面
    • 課後練習
  • 9 Collection與Map
    • 9.1 使用Collection收集物件
      • 9.1.1 認識Collection架構
      • 9.1.2 具有索引的List
      • 9.1.3 內容不重複的Set
      • 9.1.4 支援佇列操作的Queue
      • 9.1.5 使用泛型
      • 9.1.6 簡介Lambda表示式
      • 9.1.7 Iterable與Iterator
      • 9.1.8 Comparable與Comparator
    • 9.2 鍵值對應的Map
      • 9.2.1 常用Map實作類別
      • 9.2.2 走訪Map鍵值
    • 9.3 不可變的Collection與Map
      • 9.3.1 淺談不可變特性
      • 9.3.2 Collections的unmodifiableXXX()方法
      • 9.3.3 List、Set、Map的of()方法
    • 課後練習
  • 10 輸入輸出
    • 10.1 InputStream與OutputStream
      • 10.1.1 串流設計觀念
      • 10.1.2 串流繼承架構
      • 10.1.3 串流處理裝飾器
    • 10.2 字元處理類別
      • 10.2.1 Reader與Writer繼承架構
      • 10.2.2 字元處理裝飾器
    • 課後練習
  • 11 執行緒與並行API
    • 11.1 執行緒
      • 11.1.1 簡介執行緒
      • 11.1.2 Thread與Runnable
      • 11.1.3 執行緒生命週期
      • 11.1.4 關於ThreadGroup
      • 11.1.5 synchronized與volatile
      • 11.1.6 等待與通知
    • 11.2 並行API
      • 11.2.1 Lock、ReadWriteLock與Condition
      • 11.2.2 使用Executor
      • 11.2.3 簡介並行Collection
    • 課後練習
  • 12 Lambda
    • 12.1 認識Lambda語法
      • 12.1.1 Lambda語法概覽
      • 12.1.2 Lambda表示式與函式介面
      • 12.1.3 Lambda遇上this與final
      • 12.1.4 方法與建構式參考
      • 12.1.5 介面預設方法
    • 12.2 Functional與Stream API
      • 12.2.1 使用Optional取代null
      • 12.2.2 標準API的函式介面
      • 12.2.3 使用Stream進行管線操作
      • 12.2.4 進行Stream的reduce與collect
      • 12.2.5 關於flatMap()方法
      • 12.2.6 Stream相關API
      • 12.2.7 活用Optional與Stream
    • 12.3 Lambda、平行化與非同步處理
      • 12.3.1 Stream與平行化
      • 12.3.2 Arrays與平行化
      • 12.3.3 CompletableFuture非同步處理
    • 課後練習
  • 13 時間與日期
    • 13.1 認識時間與日期
      • 13.1.1 時間的度量
      • 13.1.2 年曆簡介
      • 13.1.3 認識時區
    • 13.2 認識Date與Calendar
      • 13.2.1 時間軸上瞬間的Date
      • 13.2.2 處理時間日期的Calendar
    • 13.3 新時間日期API
      • 13.3.1 機器時間觀點的API
      • 13.3.2 人類時間觀點的API
      • 13.3.3 對時間的運算
      • 13.3.4 年曆系統設計
    • 課後練習
  • 14 NIO與NIO2
    • 14.1 認識NIO
      • 14.1.1 NIO概觀
      • 14.1.2 Channel架構與操作
      • 14.1.3 Buffer架構與操作
    • 14.2 NIO2檔案系統
      • 14.2.1 NIO2架構
      • 14.2.2 操作路徑
      • 14.2.3 屬性讀取與設定
      • 14.2.4 操作檔案與資料夾
      • 14.2.5 讀取、走訪資料夾
      • 14.2.6 過濾、搜尋檔案
    • 課後練習
  • 15 通用API
    • 15.1 日誌
      • 15.1.1 簡介日誌API
      • 15.1.2 指定日誌層級
      • 15.1.3 使用Handler與Formatter
      • 15.1.4 自訂Handler、Formatter與Filter
      • 15.1.5 使用logging.properties
    • 15.2 HTTP Client API
      • 15.2.1 淺談URI與HTTP
      • 15.2.2 入門HTTP Client API
      • 15.2.3 發送請求資訊
    • 15.3 規則表示式
      • 15.3.1 簡介規則表示式
      • 15.3.2 quote()與quoteReplacement()
      • 15.3.3 Pattern與Matcher
      • 15.3.4 Unicode規則表示式
    • 15.4 處理數字
      • 15.4.1 使用BigInteger
      • 15.4.2 使用BigDecimal
      • 15.4.3 數字的格式化
    • 15.5 再談堆疊追蹤
      • 15.5.1 取得StackTraceElement
      • 15.5.2 Stack-Walking API
    • 課後練習
  • 16 整合資料庫
    • 16.1 JDBC入門
      • 16.1.1 簡介JDBC
      • 16.1.2 連接資料庫
      • 16.1.3 使用Statement、ResultSet
      • 16.1.4 使用PreparedStatement、CallableStatement
    • 16.2 JDBC進階
      • 16.2.1 使用DataSource取得連線
      • 16.2.2 使用ResultSet捲動、更新資料
      • 16.2.3 批次更新
      • 16.2.4 Blob與Clob
      • 16.2.5 簡介交易
      • 16.2.6 簡介metadata
    • 課後練習
  • 17 反射與類別載入器
    • 17.1 運用反射
      • 17.1.1 Class與.class檔案
      • 17.1.2 使用Class.forName()
      • 17.1.3 從Class建立物件
      • 17.1.4 從Class獲得資訊
      • 17.1.5 操作物件方法與成員
      • 17.1.6 動態代理
      • 17.1.7 當反射遇上模組
      • 17.1.8 使用ServiceLoader
    • 17.2 瞭解類別載入器
      • 17.2.1 類別載入器階層
      • 17.2.2 建立ClassLoader實例
    • 課後練習
  • 18 自訂泛型、列舉與標註
    • 18.1 自訂泛型
      • 18.1.1 使用extends與?
      • 18.1.2 使用super與?
    • 18.2 自訂列舉
      • 18.2.1 成員的細節
      • 18.2.2 建構式、方法與介面
    • 18.3 record與sealed
      • 18.3.1 深入record類別
      • 18.3.2 sealed的型態階層
    • 18.4 關於標註
      • 18.4.1 常用標準標註
      • 18.4.2 自訂標註型態
      • 18.4.3 執行時期讀取標註資訊
    • 課後練習
  • 19 深入模組化
    • 19.1 運用模組
      • 19.1.1 模組的種類
      • 19.1.2 requires、exports與opens細節
      • 19.1.3 修補模組
      • 19.1.4 放寬模組封裝與依賴
    • 19.2 模組API
      • 19.2.1 使用Module
      • 19.2.2 使用ModuleDescriptor
      • 19.2.3 淺談ModuleLayer
    • 19.3 打包模組
      • 19.3.1 使用jar打包
      • 19.3.2 使用jmod打包
      • 19.3.3 使用jlink建立執行時期映像
  • A 如何使用本書專案
    • A.1 專案環境配置
    • A.2 匯入專案
  • 出版地 臺灣
  • 語言 繁體中文

評分與評論

請登入後再留言與評分
幫助
您好,請問需要甚麼幫助呢?
使用指南

客服專線:0800-000-747

服務時間:週一至週五 AM 09:00~PM 06:00

loading