注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計JAVA及其相關Java語言計算機科學與程序設計:第3版

Java語言計算機科學與程序設計:第3版

Java語言計算機科學與程序設計:第3版

定 價:¥98.00

作 者: (美)Walter Savitch著;朱劍平,劉穎等譯;朱劍平譯
出版社: 清華大學出版社
叢編項: 國外經(jīng)典教材·計算機科學與技術
標 簽: Java

ISBN: 9787302105923 出版時間: 2005-04-01 包裝: 膠版紙
開本: 26cm 頁數(shù): 858 字數(shù):  

內容簡介

  本書設計用做編程與計算機科學的第一門課程,它涉及了編程技術及Java編程語言基礎。本書適合用做一學期課程,也適合用做一學年課程。本書不需要任何編程經(jīng)驗,所需的數(shù)學知識也只要一些高中代數(shù)。要向已有其他編程課程的學生再講授一門Java課程,也可以使用本書,這時本書前幾章可以當做課外閱讀資料(若學生已具有C或C++編程經(jīng)驗,這里也給出了一個附錄以解釋Java與C或C++之間的一些差異)。 本書中所有代碼均使用Sun Microsystems公司(簡稱Sun公司)的Java 2(版本為1.4)測試通過。為了能夠充分地利用本書,你所使用的Java版本應該是1.4或更高版本。本書對Java知識點的覆蓋面已經(jīng)在試驗班教學中通過了測試,另外本書對初學者而言也是一個簡練而可行的指南。

作者簡介

  WalterSavitch編寫了許多編程方面的暢銷書、涉及Java、Pascal、Ada、C++、CS1和CS2。他因其著作的靈活性和易于理解的寫作風格而受到了廣泛的贊譽。Savitch是加州大學對地亞哥分校計算機系的教授。

圖書目錄

第1章 計算機及Java簡介
1.1 計算機基礎
1.1.1 硬件與內存
1.1.2 程序
1.1.3 編程語言與編譯器
1.1.4 Java字節(jié)碼
1.1.5 鏈接
1.2 設計程序
1.2.1 面向對象編程
1.2.2 封裝
1.2.3 多態(tài)
1.2.4 繼承
1.2.5 若大家學習過某種其他編程語言
1.2.6 算法
1.2.7 可重用組件
1.2.8 測試與調試
陷阱:對付陷阱
陷阱:隱藏式錯誤
1.3 Java體驗
1.3.1 Java語言簡史
1.3.2 Applet
1.3.3 第一個Java應用程序
1.3.4 編譯Java程序或類
1.3.5 運行Java程序
1.3.6 Applet實例預覽(選修)
1.4 本章小結
1.5 自測題答案
1.6 編程練習
第2章 原型、字符串與交互式I/O
2.1 原型與表達式
2.1.1 變量
2.1.2 Java標識符
陷阱:Java區(qū)分大小寫
2.1.3 原型
2.1.4 賦值語句
2.1.5 專用賦值運算符
2.1.6 簡單輸入與輸出
2.1.7 數(shù)字常量
2.1.8 賦值兼容性
2.1.9 類型強轉
Java提示:將字符強轉成整數(shù)
編程提示:初始化變量
陷阱:浮點數(shù)的不精確性
2.1.10 算術運算符
2.1.11 括號與優(yōu)先規(guī)則
案例研究:零售機兌換
2.1.12 遞增/遞減運算符
2.1.13 遞增/遞減運算符更多相關信息
2.2 String類
2.2.1 字符串常量與變量
2.2.2 字符串連接
2.2.3 類
2.2.4 String方法
2.2.5 字符串處理
2.2.6 轉義字符
2.2.7 Unicode字符集
2.3 鍵盤與屏幕I/O
2.3.1 屏幕輸出
2.3.2 SavitchIn輸入
2.3.3 其他輸入方法
陷阱:readInt與readDouble
編程提示:回顯輸入
2.4 文檔與樣式
編程提示:使用有意義的變量名
2.4.1 文檔與注釋
2.4.2 縮進
2.4.3 命名式常量
2.5 本章小結
2.6 自測題答案
2.7 編程練習
第3章 控制流
3.1 分支語句
3.1.1 if-else語句
3.1.2 布爾表達式介紹
陷阱:在字符串中使用==
編程提示:按字母順序比較
3.1.3 嵌套語句與復合語句
Java提示:else與if的配對關系
3.1.4 多分支的if-else語句
編程示例:評等級分
3.1.5 switch語句
陷阱:忽略break語句
3.1.6 條件操作符(選修)
3.2 Java中的循環(huán)語句
3.2.1 while語句
Java提示:while循環(huán)能夠執(zhí)行零次迭代
3.2.2 do-while語句
編程示例:害蟲成災
陷阱:無限循環(huán)
3.2.3 for語句
3.2.4 for語句中的逗號(選修)
陷阱:循環(huán)語句中的多余分號
Java提示:選擇一種循環(huán)語句
3.2.5 循環(huán)中的break語句
陷阱:break語句的誤用
3.2.6 exit方法
3.3 循環(huán)在編程中的應用
3.3.1 循環(huán)體
3.3.2 初始化語句
3.3.3 終止循環(huán)
編程示例:嵌套循環(huán)
編程提示:不要在循環(huán)體中聲明變量
3.3.4 循環(huán)中的錯誤
3.3.5 變量跟蹤
3.4 布爾類型
3.4.1 布爾表達式與布爾變量
編程提示:布爾變量的命名
3.4.2 優(yōu)先級規(guī)則
3.4.3 布爾值的輸入和輸出
案例研究:使用布爾變量來結束循環(huán)
3.5 本章小結
3.6 自測題答案
3.7 編程練習
第4章 定義類與方法
4.1 類與方法定義
4.1.1 類文件與獨立編譯
4.1.2 實例變量
4.1.3 使用方法
4.1.4 空方法定義
4.1.5 有返回值的方法
Java提示:空方法中return的使用
4.1.6 this參數(shù)
4.1.7 局部變量
4.1.8 塊
陷阱:在塊中聲明的變量
Java提示:在for語句中聲明變量
4.1.9 原型參數(shù)
陷阱:參數(shù)與參量概念的使用
4.1.10 類與方法的定義語法小結
4.2 信息隱藏與封裝
4.2.1 信息隱藏
編程提示:參數(shù)名對方法是局部有效的
4.2.2 前提注釋與結果注釋
Java提示:斷言檢查
4.2.3 public和private修飾語
編程提示:實例變量應為私有
編程示例:Purchaes類
4.2.4 封裝
4.2.5 用Javadoc自動生成文檔
4.2.6 UML類圖
4.3 對象與引用
4.3.1 類類型變量和對象
陷阱:類類型變量中=和==的使用
Java提示:為類設計equals方法
4.3.2 布爾值方法
4.3.3 類參數(shù)
4.3.4 類參數(shù)與原型參數(shù)的比較
4.4 本章小結
4.5 自測題答案
4.6 編程練習
第5章 關于對象與方法的更多知識
5.1 方法編程
5.1.1 調用其他方法的方法
編程提示:設置輔助方法為私有方法
Java提示:恰當?shù)卦O置編譯器
陷阱:Null指針異常
5.2 靜態(tài)方法與靜態(tài)變量
5.2.1 靜態(tài)方法
陷阱:在靜態(tài)方法中調用非靜態(tài)方法
Java提示:可以在類中加入一個main方法
5.2.2 靜態(tài)變量(選修)
5.2.3 Math類
5.2.4 Integer類、Double類和其他包裝類
5.3 設計方法
案例研究:格式化輸出
5.3.1 自頂向下的設計
5.3.2 測試方法
5.4 重載
5.4.1 重載的基本要求
編程示例:Pet類
陷阱:重載與自動類型轉換
陷阱:無法根據(jù)返回值的類型來實現(xiàn)重載
編程示例:類Money
5.5 構造函數(shù)
5.5.1 定義構造函數(shù)
編程提示:可以在構造函數(shù)中使用其他方法
陷阱:忽略默認構造函數(shù)
陷阱:許多包裝類不具有默認構造函數(shù)
5.6 信息隱藏重訪
陷阱:私密泄漏
5.7 包
5.7.1 包和導入
5.7.2 包名與目錄
陷阱:在類路徑中沒有包含當前目錄
5.7.3 命名沖突
5.8 本章小結
5.9 自測題答案
5.10 編程練習
第6章 數(shù)組
6.1 數(shù)組基礎
6.1.1 數(shù)組的創(chuàng)建與訪問
6.1.2 數(shù)組詳解
編程提示:使用單數(shù)數(shù)組名
6.1.3 length實例變量
Java提示:數(shù)組索引從零開始
編程提示:使用for循環(huán)遍歷數(shù)組
陷阱:數(shù)組索引超出邊界
6.1.4 初始化數(shù)組
6.2 類與方法中的數(shù)組
案例研究:銷售報表
6.2.1 索引式變量用做方法參量
6.2.2 整個數(shù)組用做方法參量
6.2.3 方法main的參量
陷阱:數(shù)組中=與==的用法
6.2.4 返回數(shù)組的方法
6.3 數(shù)組及類的編程
編程示例:一個專用清單類
6.3.1 部分填充的數(shù)組
6.3.2 搜索數(shù)組
陷阱:返回一個數(shù)組實例變量
6.4 排序數(shù)組
6.4.1 選擇排序
6.4.2 其他排序算法
6.5 多維數(shù)組
6.5.1 多維數(shù)組基礎
6.5.2 多維數(shù)組參數(shù)與返回值
6.5.3 多維數(shù)組的實現(xiàn)
6.5.4 不整齊的數(shù)組(選修)
編程示例:員工時間記錄
6.6 本章小結
6.7 自測題答案
6.8 編程練習
第7章 繼承
7.1 繼承基礎
編程示例:Person類
7.1.1 派生類
7.1.2 覆蓋方法定義
7.1.3 覆蓋與重載的對比
7.1.4 final限定詞
陷阱:使用基類的私有實例變量
編程提示:假定合作者心懷叵測
陷阱:私有方法并不被繼承
7.1.5 UML繼承示意圖
7.2 繼承的編程
7.2.1 派生類中的構造函數(shù)
7.2.2 this方法(選修)
7.2.3 調用被覆蓋的方法
編程示例:多層派生類
7.2.4 重載與覆蓋的一個微妙之處(選修)
Java提示:不能使用多重super
編程提示:對象可以具有多種類型
編程提示:"是一個"與"有一個"間的關系
7.2.5 Object類
案例研究:字符式圖形
7.2.6 抽象類
7.2.7 接口(選修)
7.3 動態(tài)綁定與多態(tài)
7.3.1 動態(tài)綁定
7.3.2 類型檢查與動態(tài)綁定
7.3.3 toString的動態(tài)綁定
7.3.4 多態(tài)
Java提示:較好的equals方法(選修)
7.4 本章小結
7.5 自測題答案
7.6 編程練習
第8章 異常處理
8.1 異常處理基礎
8.1.1 Java中的異常
8.1.2 預定義類Exception
8.1.3 ArrayIndexOutOfBoundsException(備選排序)
8.2 定義異常類
8.2.1 定義自己的異常類
Java提示:定義異常類時保留getMessage
編程提示:何時定義異常類
8.3 使用異常類
8.3.1 聲明異常(轉移包袱)
8.3.2 不須捕獲的異常
8.3.3 AssertionError類(選修)
8.3.4 多重拋出與捕獲
Java提示:首先捕獲較專用的異常
編程提示:異常處理與信息隱藏
陷阱:濫用異常
編程提示:何時拋出異常
陷阱:嵌套式try-catch語句塊
8.3.5 finally語句塊(選修)
8.3.6 重新拋出異常(選修)
案例研究:行式計算器
8.4 本章小結
8.5 自測題答案
8.6 編程練習
第9章 流與文件I/O
9.1 流與文件I/O概述
9.1.1 流的概念
9.1.2 為什么要使用文件進行I/O?
9.1.3 文本文件與二進制文件之間的區(qū)別
9.2 文本文件I/O
9.2.1 文本文件輸出:PrintWriter
陷阱:try語句塊是一種語句塊
陷阱:覆蓋文件
Java提示:追加至文本文件
Java提示:使用toString用于文本文件輸出
9.2.2 文本文件輸入:BufferedReader
編程示例:從鍵盤上讀取文件名
Java提示:使用路徑名
9.2.3 StringTokenizer類
Java提示:測試文本文件的末尾
9.2.4 FileReader類與FileOutputStream類
9.2.5 解析SavitchIn類
9.3 File類
使用File類
9.4 二進制文件I/O基礎
9.4.1 輸出至二進制文件:使用ObjectOutputStream
9.4.2 writeUTF的一些細節(jié)(選修)
9.4.3 從二進制文件中讀取輸入:使用ObjectInputStream
陷阱:對文本文件使用ObjectInputStream
陷阱:定義方法以打開流
9.4.4 EOFException類
陷阱:忘記檢查文件末尾
陷阱:以錯誤的方式檢查文件末尾
9.4.5 FileInputStream類與FileOutputStream類
編程示例:處理二進制數(shù)據(jù)文件
9.5 對象流的對象I/O
9.5.1 類對象的二進制I/O
陷阱:異常、異常、還是異常
9.5.2 Serializable接口
陷阱:在同一文件中混合多種類類型
9.5.3 二進制文件中的數(shù)組對象
9.6 本章小結
9.7 自測題答案
9.8 編程練習
第10章 動態(tài)數(shù)據(jù)結構
10.1 向量
10.1.1 使用向量
編程提示:往向量中添加元素
陷阱:向量元素的類型為Object
10.1.2 比較向量和數(shù)組
陷阱:使用capacity代替size
Java提示:使用trimToSize來節(jié)省內存
陷阱:使用方法clone
Java提示:新的集合類(選修)
10.2 鏈接數(shù)據(jù)結構
10.2.1 鏈表
陷阱:空指針異常
陷阱:私密泄露
10.2.2 內部類
10.2.3 結點內部類
10.2.4 迭代器
編程提示:內部迭代器和外部迭代器
10.2.5 鏈表的異常處理
10.2.6 鏈表的變體
10.2.7 其他的鏈接數(shù)據(jù)結構
10.3 本章小結
10.4 自測題答案
10.5 編程練習
第11章 遞歸
11.1 遞歸的基本概念
案例研究:單詞的位數(shù)
11.1.1 遞歸的工作原理
陷阱:無限遞歸
11.1.2 遞歸定義與迭代定義
11.1.3 帶返回值的遞歸方法
11.2 使用遞歸進行編程
編程提示:不斷詢問直到用戶弄對為止
案例研究:二分查找
編程提示:將問題一般化
編程示例:歸并排序-遞歸排序算法
11.3 本章小結
11.4 自測題答案
11.5 編程練習
第12章 遞歸窗口界面--Swing
12.1 背景
12.1.1 GUI--圖形用戶界面
12.1.2 事件驅動編程
12.2 Swing詳解初步
陷阱:在運行Swing程序時保存全部工作
編程示例:一個簡單的窗口
Java提示:終止Swing程序
陷阱:忘記編程"關閉窗口"按鈕
陷阱:忘記使用getContentPane
12.2.1 窗口監(jiān)聽器詳解
12.2.2 屏幕對象的尺寸單位
12.2.3 setVisible詳解
編程示例:本章第一個Swing程序的改進版
編程示例:帶顏色的窗口
12.2.4 JFrame類的一些方法
12.2.5 布局管理器
12.3 按鈕與動作監(jiān)聽器
編程示例:添加按鈕
12.3.1 按鈕
12.3.2 動作監(jiān)聽器與動作事件
陷阱:修改actionPerformed的參數(shù)列表
12.3.3 界面
Java提示:為GUI的外觀與動作分別編碼
12.3.4 "模型-視圖-控制器"模式
Java提示:使用setActionCommand方法
12.4 容器類
12.4.1 JPanel類
12.4.2 Container類
Java提示:簡單窗口界面的構建指南
12.5 GUI的文本I/O
12.5.1 文本區(qū)與文本框
編程示例:標簽化一個文本框
12.5.2 輸入/輸出數(shù)字
編程示例:GUI累加器
12.5.3 捕獲NumberFormatException
12.6 本章小結
12.7 自測題答案
12.8 編程練習
第13章 Applet和HTML
13.1 applet
13.1.1 applet基本知識
13.1.2 運行Applet小程序
編程示例:加法器applet小程序
Java提示:把Swing應用程序轉換成applet小程序
13.1.3 在Applet小程序中添加圖標
13.2 HTML介紹
13.2.1 HTML基本知識
編程提示:一個簡單的HTML文檔框架
13.2.2 插入超鏈接
陷阱:不使用重新加載(刷新)按鈕
13.2.3 顯示圖片
編程提示:HTML是一種低級語言
13.3 HTML頁面中的Applet小程序
13.3.1 在HTML文檔中放置applet小程序
Java提示:Applet查看器重訪
陷阱:使用老版本的網(wǎng)絡瀏覽器
13.3.2 老版本的applet類(選修)
13.3.3 applet小程序與安全
13.4 本章小結
13.5 自測題答案
13.6 編程練習
第14章 更多的Swing
14.1 菜單
編程示例:帶有菜單的GUI
14.1.1 菜單欄、菜單與菜單項
14.1.2 嵌套菜單
14.2 讓GUI更漂亮(功能更強)
14.2.1 添加圖標
陷阱:調整按鈕大小
14.2.2 滾動條與JScrollPane類
14.2.3 添加邊框
陷阱:忘記引入javax.Swing.border
14.3 更多的布局管理器
14.3.1 BoxLayout管理器類
14.3.2 Struts和Glue
陷阱:在其他布局管理器中使用strut和glue
14.3.3 設置組件間間隔
14.3.4 Box容器類
14.3.5 CardLayout管理器
14.4 內部類
輔助類
14.5 事件與監(jiān)聽器的進一步討論
14.5.1 WindowListener接口
Java提示:關閉窗口按鈕的編程
Java提示:setDefaultCloseOperation的進一步介紹
編程示例:可見性可變的組件
14.5.2 更新GUI的更多細節(jié)
14.6 再探Swing類層次結構
14.6.1 按鈕、菜單和抽象按鈕
Java提示:JMenuItem類的其他構造函數(shù)
Java提示:還有很多Swing類和方法
14.7 本章小結
14.8 自測題答案
14.9 編程練習
附錄1 關鍵字
附錄2 優(yōu)先規(guī)則
附錄3 Unicode字符集
附錄4 SavitchIn
附錄5 Protected和Package修飾語
附錄6 十進制格式化類
附錄7 迭代器接口
附錄8 復制
附錄9 Javadoc
附錄10 JOptionPane類
附錄11 C++與Java之間的區(qū)別
詞匯表
END USER LICENSE AGREEMENTS

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號