出版時(shí)間:2008-6 出版社:機(jī)械工業(yè)出版社 作者:Cay S. Horstmann,Gary Cornell 頁(yè)數(shù):694 譯者:杜永萍,鄺勁筠,葉乃文
Tag標(biāo)簽:無(wú)
前言
《JAVA核心技術(shù)》自第一版出版以來(lái),一直廣受JAVSA程序設(shè)計(jì)員的青睞。是一本暢銷不衰的JAVA經(jīng)典書籍。本書的兩位作者都有編寫程序設(shè)計(jì)方面書籍的經(jīng)驗(yàn)。 眾所周知,JAVA程序設(shè)計(jì)序言仍處于不斷完善和發(fā)展的活躍時(shí)期,為了能及時(shí)地跟上JAVA的發(fā)展步伐,在短短的10年里,本書已修改了7次,第8版同樣是為了適應(yīng)JAVA 的最新特性而修訂。
內(nèi)容概要
《Java核心技術(shù)》出版以來(lái)一直暢銷不衰,深受讀者青睞,每個(gè)新版本都盡可能快地跟上Java開發(fā)工具箱發(fā)展的步伐,而且每一版都重新改寫了部分內(nèi)容,以便適應(yīng)Java的最新特性。本版也不例外,它反映了Java SE 6的新特性。全書共14章,包括Java基本的程序結(jié)構(gòu)、對(duì)象與類、繼承、接口與內(nèi)部類、圖形程序設(shè)計(jì)、事件處理、Swing用戶界面組件、部署應(yīng)用程序和Applet、異常日志斷言和調(diào)試、泛型程序設(shè)計(jì)、集合以及多線程等內(nèi)容。 全書對(duì)Java技術(shù)的闡述精確到位,敘述方式深入淺出,并包含大量示例,從而幫助讀者充分理解Java語(yǔ)言以及Java類庫(kù)的相關(guān)特性。
作者簡(jiǎn)介
Cay S. Horstmann參與編寫《Core Java Server Faces》第2版(Prentice Hall, 2007)。Cay是圣何塞州立大學(xué)計(jì)算機(jī)科學(xué)系教授、Java的倡導(dǎo)者,并經(jīng)常在計(jì)算機(jī)會(huì)議上講演。
Cray Cornell已經(jīng)編寫并教授程序設(shè)計(jì)專業(yè)課程20余年,是Apress的創(chuàng)始人。他撰寫的程序設(shè)計(jì)專業(yè)
書籍目錄
第1章 Java程序設(shè)計(jì)概述 1.1 Java程序設(shè)計(jì)平臺(tái) 1.2 Java“白皮書”的關(guān)鍵術(shù)語(yǔ) 1.2.1 簡(jiǎn)單性 1.2.2 面向?qū)ο蟆 ?.2.3 網(wǎng)絡(luò)技能 1.2.5 安全性 1.2.6 體系結(jié)構(gòu)中立 1.2.7 可移植性 1.2.8 解釋型 1.2.9 高性能 1.2.10 多線程 1.2.11 動(dòng)態(tài)性 1.3 Java Appletc與Internet 1.4 Java發(fā)展簡(jiǎn)史 1.5 關(guān)于Java的常見誤解第2章 Java程序設(shè)計(jì)環(huán)境 2.1 安裝Java開發(fā)工具箱 2.1.1 下載JDK 2.1.2 設(shè)置執(zhí)行路徑 2.1.3 安裝源代碼庫(kù)和文檔 2.1.4 安裝本書中的示例 2.1.5 導(dǎo)航Java目錄 2.2 選擇開發(fā)環(huán)境 2.3 使用命令行工具 2.4 使用集成開發(fā)環(huán)境 2.5 運(yùn)行圖形化應(yīng)用程序 2.6 建立并運(yùn)行appletc 第3章 Java基本的程序設(shè)計(jì)結(jié)構(gòu) 3.1 一個(gè)簡(jiǎn)單的Java應(yīng)用程序 3.2 注釋 3.3 數(shù)據(jù)類型 3.3.1 整型 3.3.2 浮點(diǎn)類型 3.3.3 char類型 3.3.4 boolean類型 3.4 變量 3.4.1 變量初始化 3.4.2 常量 3.5 運(yùn)算符 3.5.1 自增運(yùn)算符與自減運(yùn)算符 3.5.2 關(guān)系運(yùn)算符與boolean運(yùn)算符 3.5.4 數(shù)學(xué)函數(shù)與常量 3.5.5 數(shù)值類型之間的轉(zhuǎn)換 3.5.6 強(qiáng)制類型轉(zhuǎn)換 3.5.7 括號(hào)與運(yùn)算符級(jí)別 3.5.8 枚舉類型 3.6 字符串 3.6.1 子串 3.6.2 拼接 3.6.3 不可變字符串 3.6.4 檢測(cè)字符串是否相等 3.6.5 代碼點(diǎn)與代碼單元 3.6.6 字符串API 3.6.7 閱讀聯(lián)機(jī)API文檔 3.6.8 構(gòu)建字符串 3.7 輸入輸出 3.7.1 讀取輸入 3.7.2 格式化輸出 3.7.3 文件輸入與輸出 3.8 控制流程 3.8.1 塊作用域 3.8.2 條件語(yǔ)句 3.8.3 循環(huán) 3.8.4 確定循環(huán) 3.8.5 多重選擇:switch語(yǔ)句 3.8.6 中斷控制流程語(yǔ)句 3.9 大數(shù)值 3.10 數(shù)組 3.10.1 Forceh循環(huán) 3.10.2 數(shù)組初始化以及匿名數(shù)組 3.10.4 命令行參數(shù) 3.10.5 數(shù)組排序 3.10.6 多維數(shù)組 3.10.7 不規(guī)則數(shù)組第4章 對(duì)象與類 4.1 面向?qū)ο蟪绦蛟O(shè)計(jì)概述 4.1.1 類 4.1.2 對(duì)象 4.1.3 識(shí)別類 4.1.4 類之間的關(guān)系 4.2 使用現(xiàn)有類 4.2.1 對(duì)象與對(duì)象變量 4.2.2 Java類庫(kù)中的GregorianCalendar類 4.2.3 更改器方法與訪問(wèn)器方法 4.3 用戶自定義類 4.3.1 一個(gè)Employee類 4.3.2 多個(gè)源文件的使用 4.3.3 解析Employee類 4.3.4 從構(gòu)造器開始 4.3.5 隱式參數(shù)與顯式參數(shù) 4.3.6 封裝的優(yōu)點(diǎn) 4.3.7 基于類的訪問(wèn)權(quán)限 4.3.8 私有方法 4.3.9 Final實(shí)例域 4.4 靜態(tài)域與靜態(tài)方法 4.4.1 靜態(tài)域 4.4.2 靜態(tài)常量 4.4.3 靜態(tài)方法 4.4.4 Ftory方法 4.4.5 Main方法 4.5 方法參數(shù) 4.6 對(duì)象構(gòu)造 4.6.1 重載 4.6.2 默認(rèn)域初始化 4.6.3 默認(rèn)構(gòu)造器 4.6.4 顯式域初始化 4.6.5 參數(shù)名 4.6.6 調(diào)用另一個(gè)構(gòu)造器 4.6.7 初始化塊 4.6.8 對(duì)象析構(gòu)與finalize方法 4.7 包 4.7.1 類的導(dǎo)入 4.7.2 靜態(tài)導(dǎo)入 4.7.3 將類放入包中 4.7.4 包作用域 4.8 類路徑 4.9 文檔注釋 4.9.1 注釋的插入 4.9.2 類注釋 4.9.3 方法注釋 4.9.4 域注釋 4.9.5 通用注釋 4.9.6 包與概述注釋 4.9.7 注釋的抽取 4.10 類設(shè)計(jì)技巧第5章 繼承 5.1 類.c超類和子類 5.1.1 繼承層次 5.1.2 多態(tài) 5.1.3 動(dòng)態(tài)綁定 5.1.4 阻止繼承:final類和方法 5.1.5 強(qiáng)制類型轉(zhuǎn)換 5.1.6 抽象類 5.1.7 受保護(hù)訪問(wèn) 5.2 Object:所有類的超類 5.2.1 Equals方法 5.2.2 相等測(cè)試與繼承 5.2.3 HashCode方法 5.2.4 ToString方法 5.3 泛型數(shù)組列表 5.3.1 訪問(wèn)數(shù)組列表元素 5.3.2 類型化與原始數(shù)組列表的兼容性 5.4 對(duì)象包裝器與自動(dòng)打包 5.5 參數(shù)數(shù)量可變的方法 5.6 枚舉類 5.7 反射 5.7.1 Class類 5.7.2 捕獲異?! ?.7.3 利用反射分析類的能力 5.7.4 在運(yùn)行時(shí)使用反射分析對(duì)象 5.7.5 使用反射編寫泛型數(shù)組代碼 5.7.6 方法指針 5.8 繼承設(shè)計(jì)的技巧第6章 接口與內(nèi)部類 6.1 接口 6.1.1 接口的特性 6.1.2 接口與抽象類 6.2 對(duì)象克隆 6.3 接口與回調(diào) 6.4 內(nèi)部類 6.4.1 使用內(nèi)部類訪問(wèn)對(duì)象狀態(tài) 6.4.2 內(nèi)部類的特殊語(yǔ)法規(guī)則 6.4.3 內(nèi)部類是否有用.c必要和安全 6.4.4 局部?jī)?nèi)部類 6.4.5 由外部方法訪問(wèn)final變量 6.4.6 匿名內(nèi)部類 6.4.7 靜態(tài)內(nèi)部類 6.5 代理第7章 圖形程序設(shè)計(jì) 7.1 Swing概述 7.2 創(chuàng)建框架 7.3 框架定位 7.4 框架屬性 7.5 決定框架大小 7.6 在組件中顯示信息 7.7 2D圖形 7.8 顏色 7.9 為文本設(shè)定特殊字體 7.10 圖像第8章 事件處理 8.1 事件處理基礎(chǔ) 8.1.1 實(shí)例:處理按鈕點(diǎn)擊事件 8.1.2 建議使用內(nèi)部類 8.1.3 創(chuàng)建包含一個(gè)方法調(diào)用的監(jiān)聽器 8.1.4 實(shí)例:改變觀感 8.1.5 適配器類 8.2 動(dòng)作 8.3 鼠標(biāo)事件 8.4 AWT事件繼承層次第9章 Swing用戶界面組件 9.1 Swing和模型-視圖-控制器設(shè)計(jì)模式 9.1.1 設(shè)計(jì)模式 9.1.2 模型-視圖-控制器模式 9.1.3 Swing按鈕的模型-視圖-控制器分析 9.2 布局管理器概述 9.2.1 邊框布局 9.2.2 網(wǎng)格布局 9.3 文本輸入 9.3.1 文本域 9.3.2 標(biāo)簽和標(biāo)簽組件 9.3.3 密碼域 9.3.4 文本區(qū) 9.3.5 滾動(dòng)窗格 9.4 選擇組件 9.4.1 復(fù)選框 9.4.2 單選按鈕 9.4.3 邊框 9.4.4 組合框 9.4.5 滑塊 9.5 菜單 9.5.1 菜單創(chuàng)建 9.5.2 菜單項(xiàng)中的圖標(biāo) 9.5.3 復(fù)選框和單選按鈕菜單項(xiàng) 9.5.4 彈出菜單 9.5.5 快捷鍵和加速器 9.5.6 啟用和禁用菜單項(xiàng) 9.5.7 工具欄 9.5.8 工具提示 9.6 復(fù)雜的布局管理 9.6.1 網(wǎng)格組布局 9.6.2 組布局 9.6.3 不使用布局管理器 9.6.4 定制布局管理器 9.6.5 遍歷順序 9.7 對(duì)話框 9.7.1 選項(xiàng)對(duì)話框 9.7.2 創(chuàng)建對(duì)話框 9.7.3 數(shù)據(jù)交換 9.7.4 文件對(duì)話框 9.7.5 顏色選擇器第10章 部署應(yīng)用程序和applet 10.1 JAR文件 10.1.1 清單文件 10.1.2 可運(yùn)行JAR文件 10.1.3 資源 10.1.4 密封 10.2 Java WebcStart 10.2.1 沙箱 10.2.2 簽名代碼 10.2.3 JNLPcAPI 10.3 Applet 10.3.1 一個(gè)簡(jiǎn)單的capplet 10.3.2 將應(yīng)用程序轉(zhuǎn)換為applet 10.3.3 Applet的HTMLc標(biāo)記和屬性 10.3.4 Objectc標(biāo)記 10.3.5 使用參數(shù)向applet傳遞信息 10.3.6 訪問(wèn)圖像和音頻文件 10.3.7 Applet上下文 10.4 應(yīng)用程序存儲(chǔ)的配置 10.4.1 屬性映射 10.4.2 PreferencescAPI第11章 異常.c日志.c斷言和調(diào)試 11.1 處理異?! ?1.1.1 異常分類 11.1.2 聲明已檢查異常 11.1.3 如何拋出異?! ?1.1.4 創(chuàng)建異常類 11.2 捕獲異?! ?1.2.1 捕獲多個(gè)異?! ?1.2.2 再次拋出異常與異常鏈 11.2.3 Finally子句 11.2.4 分析堆棧跟蹤元素 11.3 使用異常機(jī)制的建議 11.4 斷言 11.4.1 啟用和禁用斷言 11.4.2 使用斷言的建議 11.4.3 為文檔使用斷言 11.5 記錄日志 11.5.1 基本日志 11.5.2 高級(jí)日志 11.5.3 修改日志管理器配置 11.5.4 本地化 11.5.5 處理器 11.5.6 過(guò)濾器 11.5.7 格式化器 11.5.8 日志記錄說(shuō)明 11.6 調(diào)試技術(shù) 11.6.1 使用控制臺(tái)窗口 11.6.2 跟蹤AWT事件 11.6.3 AWT的Robot類 11.7 使用調(diào)試器第12章 泛型程序設(shè)計(jì) 12.1 為什么要使用泛型程序設(shè)計(jì) 12.2 簡(jiǎn)單泛型類的定義 12.4 類型變量的限定 12.5 泛型代碼和虛擬機(jī) 12.5.1 翻譯泛型表達(dá)式 12.5.2 翻譯泛型方法 12.5.3 調(diào)用遺留代碼 12.6 約束與局限性 12.6.1 不能用基本類型實(shí)例化類型參數(shù) 12.6.2 運(yùn)行時(shí)類型查詢只適用于原始類型 12.6.3 不能拋出也不能捕獲泛型類實(shí)例 12.6.4 參數(shù)化類型的數(shù)組不合法 12.6.5 不能實(shí)例化類型變量 12.6.6 泛型類的靜態(tài)上下文中類型變量無(wú)效 12.6.7 注意擦除后的沖突 12.7 泛型類型的繼承規(guī)則 12.8 通配符類型 12.8.1 通配符的超類型限定 12.8.2 無(wú)限定通配符 12.8.3 通配符捕獲 12.9 反射和泛型 12.9.1 使用ClasscTc參數(shù)進(jìn)行類型匹配第13章 集合 13.1 集合接口 13.1.1 將集合的接口與實(shí)現(xiàn)分離 13.1.2 Java類庫(kù)中的集合接口和迭代器接口 13.2 具體的集合 13.2.1 鏈表 13.2.2 數(shù)組列表 13.2.3 散列集 13.2.4 樹集 13.2.5 對(duì)象的比較 13.2.6 隊(duì)列與雙端隊(duì)列 13.2.7 優(yōu)先級(jí)隊(duì)列 13.2.8 映射表 13.2.9 專用集與映射表類 13.3 集合框架 13.3.1 視圖與包裝器 13.3.2 批操作 13.3.3 集合與數(shù)組之間的轉(zhuǎn)換 13.4 算法 13.4.1 排序與混排 13.4.2 二分查找 13.4.3 簡(jiǎn)單算法 13.4.4 編寫自己的算法 13.5 遺留的集合 13.5.1 Hashtablec類 13.5.2 枚舉 13.5.3 屬性映射表 13.5.4 ?! ?3.5.5 位集第14章 多線程 14.1 線程的概念 14.2 中斷線程 14.3 線程狀態(tài) 14.3.1 新生線程 14.3.2 可運(yùn)行線程 14.3.3 被阻塞線程和等待線程 14.3.4 被終止的線程 14.4 線程屬性 14.4.1 線程優(yōu)先級(jí) 14.4.2 守護(hù)線 14.4.3 未捕獲異常處理器 14.5 同步 14.5.1 競(jìng)爭(zhēng)條件的一個(gè)例子 14.5.2 詳解競(jìng)爭(zhēng)條件 14.5.3 鎖對(duì)象 14.5.4 條件對(duì)象 14.5.5 synchronized關(guān)鍵字 14.5.6 同步阻塞 14.5.7 監(jiān)視器概念 14.5.8 Volatile域 14.5.9 死鎖 14.5.10 鎖測(cè)試與超時(shí) 14.5.11 讀/寫鎖 14.5.12 為什么棄用stop和suspend方法 14.7 線程安全的集合 14.7.1 高效的映像.c集合和隊(duì)列 14.7.2 寫數(shù)組的拷貝 14.7.3 舊的線程安全的集合 14.8 Callable與Future 14.9 執(zhí)行器 14.9.1 線程池 14.9.2 預(yù)定執(zhí)行 14.9.3 控制任務(wù)組 14.10 同步器 14.10.1 信號(hào)量 14.10.2 倒計(jì)時(shí)門栓 14.10.3 障柵 14.10.4 交換器 14.10.5 同步隊(duì)列 14.10.6 例子:暫停動(dòng)畫與恢復(fù)動(dòng)畫 14.11 線程與 14.11.1 運(yùn)行耗時(shí)的任務(wù) 14.11.2 使用Swing工作器 14.11.3 單一線程規(guī)則
章節(jié)摘錄
第1章 Java程序設(shè)計(jì)概述▲Java程序設(shè)計(jì)平臺(tái)▲Java“白皮書”的關(guān)鍵術(shù)語(yǔ)▲Java與Internet▲Java發(fā)展簡(jiǎn)史▲關(guān)于Java的常見誤解1996年Java第一次發(fā)布就引起了人們的極大興趣。關(guān)注Java的人士不僅限于計(jì)算機(jī)出版界,還有諸如《紐約時(shí)報(bào)》、《華盛頓郵報(bào)》、《商業(yè)周刊》這樣的主流媒體。Java是第一種也是惟一的一種在National Public Radio上占用了10分鐘時(shí)間進(jìn)行介紹的程序設(shè)計(jì)語(yǔ)言,并且還得到了$100000000的風(fēng)險(xiǎn)投資基金。這些基金全部用來(lái)支持用這種特別的計(jì)算機(jī)語(yǔ)言開發(fā)的產(chǎn)品。重溫那些令人興奮的日子是很有意思的。本章將簡(jiǎn)要地介紹一下Java語(yǔ)言的發(fā)展歷史。1.1 Java程序設(shè)計(jì)平臺(tái)本書的第1版是這樣描寫Java的:“作為一種計(jì)算機(jī)語(yǔ)言,Java的廣告詞確實(shí)有點(diǎn)夸大其辭。然而,Java的確是一種優(yōu)秀的程序設(shè)計(jì)語(yǔ)言。作為一個(gè)名副其實(shí)的程序設(shè)計(jì)人員,使用Java無(wú)疑是一個(gè)好的選擇。有人認(rèn)為:Java將有望成為一種最優(yōu)秀的程序設(shè)計(jì)語(yǔ)言,但還需要一個(gè)相當(dāng)長(zhǎng)的發(fā)展時(shí)期。一旦一種語(yǔ)言應(yīng)用于某個(gè)領(lǐng)域,與現(xiàn)存代碼的相容性問(wèn)題就擺在了人們的面前?!蔽覀兊木庉嬍种杏性S多這樣的廣告詞。這是Sun公司高層的某位不愿透露姓名的人士提供的。然而,現(xiàn)在看起來(lái),當(dāng)初的這些預(yù)測(cè)還是有一定準(zhǔn)確性的。Java有許多非常優(yōu)秀的語(yǔ)言特性,本章稍后將會(huì)詳細(xì)地討論這些特性。由于相容性這個(gè)嚴(yán)峻的問(wèn)題確實(shí)存在于現(xiàn)實(shí)中,所以,或多或少地還是有一些“累贅”被加到語(yǔ)言中,這就導(dǎo)致Java并不如想像中的那么完美無(wú)瑕。但是,正像我們?cè)诘?版中已經(jīng)指出的那樣,Java并不只是一種語(yǔ)言。在此之前出現(xiàn)的那么多種語(yǔ)言也沒(méi)有能夠引起那么大的轟動(dòng)。Java是一個(gè)完整的平臺(tái),有一個(gè)龐大的庫(kù),其中包含了很多可重用的代碼和一個(gè)提供諸如安全性、跨操作系統(tǒng)的可移植性以及自動(dòng)垃圾收集等服務(wù)的執(zhí)行環(huán)境。作為一名程序設(shè)計(jì)人員,常常希望能夠有一種語(yǔ)言,它具有令人賞心悅目的語(yǔ)法和易于理解的語(yǔ)義(C++不是這樣的)。與許多其他的優(yōu)秀語(yǔ)言一樣,Java恰恰滿足了這些要求。有些語(yǔ)言提供了可移植性、垃圾收集器等等,但是,沒(méi)有提俅一個(gè)大型的庫(kù)。如果想要有奇特的繪圖功能、網(wǎng)絡(luò)連接功能和數(shù)據(jù)庫(kù)存取功能就必須自己動(dòng)手編寫代碼。Java這種功能齊全的出色語(yǔ)言,具有高質(zhì)量的執(zhí)行環(huán)境以及龐大的庫(kù)。正是因?yàn)樗喾N優(yōu)勢(shì)于一身,所以對(duì)廣大的程序設(shè)計(jì)人員有著不可抗拒的吸引力。
媒體關(guān)注與評(píng)論
歷經(jīng)十二年多的技術(shù)積累與提煉;基于Java SE6全面的內(nèi)容更新;提供了經(jīng)過(guò)全面測(cè)試的真實(shí)示例;專注于Java技術(shù)基本概念的剖析;幫助你快速升級(jí)到Java SE6平臺(tái);乃我Java程序員必需的經(jīng)典指南?!狢SDN Java大版主 俞黎敏
編輯推薦
《JAVA核心技術(shù)(卷1):基礎(chǔ)知識(shí)(原書第8版)》與《Java編程思想》齊名的Java圖書泰山北斗。CSDN Java大版主等專家隆重推薦QA:1.我購(gòu)買過(guò)《Java 核心技術(shù)卷1:基礎(chǔ)知識(shí)》第7版,還需要購(gòu)買第8版嗎?答:《Java 核心技術(shù)卷1:基礎(chǔ)知識(shí)》第8版是Java技術(shù)的最新版本,在第7版的基礎(chǔ)上有除了版本更新外,另外也有30%內(nèi)容的更新。所以還是需要購(gòu)買卷1的第8版。2.《Java 核心技術(shù)卷2:高級(jí)特征》什么時(shí)候出版?答:預(yù)計(jì)11月份出版3. 那我可以購(gòu)買《Java 核心技術(shù)卷1:基礎(chǔ)知識(shí)》第8版 和《Java 核心技術(shù)卷2:高級(jí)特征》第7版嗎?答:可以的,《Java 核心技術(shù)卷2:高級(jí)特征》第8版,除了在版本上有更新,核心技術(shù)以及高級(jí)特性暫無(wú)太多變化。所以可以一起購(gòu)買。
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載