內容簡介
這些例子中大多都具有很強的實用價值,略加修改就可以在實際生活和工作中使用。通過對實例的學習和分析,可以幫助讀者更深刻地理解J2ME程式設計的方法和技巧。如果讀者是一名Java程式設計師,或者讀者對智慧型手機、PDA、3G應用程式設計或者無線網際網路套用有興趣,那么《J2ME移動軟體程式設計》對讀者而言將是一本極好的參考書籍。
閱讀《J2ME移動軟體程式設計》並不需要已經熟練地掌握Java語言。從《J2ME移動軟體程式設計》的閱讀和學習中,讀者可以同時學習到Java語言的程式設計知識。如果讀者對Java語言已經比較熟悉,那么《J2ME移動軟體程式設計》是讀者進入J2ME程式設計的最佳伴侶。
圖書目錄
第一篇 J2ME基礎知識
第1章 J2ME簡介
1.1 Java版本的演進
1.1.1 Java的演進歷史
1.1.2 Java1平台
1.1.3 Java2平台
1.2 各種Java版本的定位
1.2.1 Java不同版本之間的關係
1.2.2 J2SE、J2ME、J2EE和Smart Card
1.2.3 不同Java版本的虛擬機
1.3 J2ME與手機編程的關係
1.3.1 手機編程的歷史
1.3.2 手機上的Java開發平台——J2ME
1.4 Java程式開發簡述
1.4.1 各種Java版本的程式開發關係
1.4.2 Java程式開發流程
1.5 J2ME簡介
1.5.1 使用配置對不同設備進行抽象
1.5.2 使用框架對API進行定義
1.5.3 J2ME系統體系結構
1.5.4 J2ME已有的配置和框架
1.5.5 J2ME的技術特性
1.6 CDC、CLDC和MIDP簡介
1.6.1 CDC和CLDC簡介
1.6.2 典型框架簡介
1.7 J2ME的一些參考網站
1.7.1 主要J2ME的Web站點
1.7.2 主要的J2ME討論區
本章小結
習題
第2章 J2ME開發環境
2.1 JDK的安裝和配置步驟
2.1.1 安裝軟體的過程
2.1.2 開發環境的配置
2.1.3 檢查配置是否正確
2.2 第一個例子——HelloWorld.java
2.2.1 Hello World.java的原始碼
2.2.2 編譯、預校驗和運行
2.2.3 批處理——快速開發的技巧
2.2.4 開發MIDlet的完整流程
2.3 在網路上發布MIDlet程式
2.4 使用J2MEWirelessToolkit
2.4.1 J2MEWirelessFoolkit的硬體和軟體要求
2.4.2.1 2MEWirelessToolkit的安裝步驟
2.4.3 在J2MEWirelessToolkit中運行例子程式
2.4.4 在J2MEWirelessToolkit中創建自己的程式
2.4.5 J2MEWTK中的模擬設備簡介
2.4.6 在J2MEWTK中進行MIDlet的打包
2.5 使用Eclipse開發J2ME程式
2.5.1 Eclipse概述
2.5.2 Eclipse的安裝和配置
2.5.3 使用Eclipse開發Hello World程式
本章小結
習題二
第3章 CLDC和MIDPAPI簡介
3.1 CLDCMIDP開發環境
3.1.1 MIDlet簡介
3.1.2 應用程式可移植性
3.2 CLDCAPI簡介
3.2.1 java.lang
3.2.2 java
3.2.3 java.util
3.2.4 javax
3.3 MIDPAPI簡介
3.3.1 iava.util
3.3.2 iavax.microedition.rms
3.3.3 javax.microedition.midlet
3.3.4 javax
3.3.5 javax.microedition.lcdui
3.3.6 MIDP中增加的功能
3.4 Hello Midlet的詳細解釋
3.4.1 總體運行功能
3.4.2 各部分代碼功能
本章小結
習題三
第二篇 程式設計方法
第4章 J2ME的用戶界面編程
4.1 J2ME界面編程概述
4.1.1 Display類和螢幕顯示部件
4.1.2 典型的螢幕顯示部件
4.1.3 界面設計部件的層次關係
4.2 如何使用Display類
4.2.1 獲得MIDlet的Display類
4.2.2 顯示Displayable部件
4.3 使用Screen類和滾動條
4.3.1 Screen類的基本屬性
4.3.2 在Screen中使用滾動條
4.4 使用命令按鈕回響用戶操作
4.4.1 創建命令按鈕
4.4.2 設定命令按鈕的回響函式
4.4.3 使用命令按鈕的例子
4.5 使用文本框(TextBox)輸入信息
4.5.1 創建一個文本框
4.5.2 文本框的演示例子
4.6 使用報警顯示(Alert)提示信息
4.6.1 兩類報警:timed和modal
4.6.2 如何使用報警
4.6.3 演示報警使用的例子
4.7 向用戶提供選擇——列表(List)
4.7.1 生成一個列表
4.7.2 回響用戶對列表的操作
4.7.3 使用列表的完整例子
4.8 顯示或改變值的大小-標尺(Guage)
4.8.1 標尺的兩種類型——互動標尺和非互動標尺
4.8.2 互動式標尺
4.8.3 非互動式標尺
4.9 有效地校驗用戶輸入
4.9.1 監測部件狀態的變化——Item State Listener接口
4.9.2 對用戶輸入的字元進行校驗
4.9.3 輸入電話號碼的例子
4.10 處理日期和時間(Date Field)
4.10.1 使用Date Field
4.10.2 設定正確的日期和時間
4.10.3 clear Date()和combine Date Time()
4.10.4 使用日期和時間的完整例子
4.11 定時執行任務(Timer)
4.11.1 定時器——Timer
4.11.2 調度任務的方法
4.11.3 星空模擬程式
4.12 綜合例子——股票價格跟蹤程式
本章小結
習題四
第5章 J2ME資料庫編程
5.1 RMS的表——Record Store
5.1.1 操作Record Store的方法
5.1.2 Record Store的維護信息——-Header
5.1.3 獲得Record Store的其他信息
5.1.4 Record Store的限制
5.2 在Record Store中操作記錄
5.2.1 添加記錄
5.2.2 刪除記錄
5.2.3 修改一條記錄
5.2.4 監視記錄的改變
5.2.5 Record Store中記錄號的重用問題
5.2.6 使用Record Enumeration遍歷記錄
5.3 創建多列表格
5.3.1 編碼和解碼的方法
5.3.2 多列表格的保存
5.3.3 檢索多列表格
5.4 使用Record Comparator對記錄進行排序
5.4.1 實現Record Comparator接口
5.4.2 資料庫排序的例子
5.5 使用Record Filter查找記錄
5.5.1 實現Record Filter接口
5.5.2 查找記錄的例子
5.6 高效使用RMS的方法
5.6.t減少寫記錄次數
5.6.2 減少讀記錄次數
5.6.3 防止出現“抖動
5.6.4 重用數組
5.6.5 高效率使用RMS的例子
本章小結
習題五
第6章 J2ME的網路編程
6.1 J2ME的網路連線框架
6.1.1.J2ME的網路連線層次
6.1.2.J2ME支持的網路協定
6.1.3 例子:Stream Connection通信
6.2 使用HTTP協定通信概述
6.2.1 Http Connection類
6.2.2 例子:訪問Web Service
6.3 使用HTTP協定傳送和接收數據
6.3.1 HTTP協定通信模型
6.3.2 傳送數據的方法
6.3.3 接收數據的方法
6.3.4 伺服器端的程式
6.3.5 例子1:使用HTTP協定傳送和接收文本數據
6.3.6 例子2:使用HTTP協定傳送二進制數據
6.4 網路通信中的數據加密
6.4.1 MIDlet的安全性
6.4.2 使用加密類庫
6.4.3 一個加密類——Encryptor
6.4.4 Encryptor的使用
6.4.5 數據加密的完整例子
6.5 網路通信中的常用實例
6.5.1 從Web伺服器上取回一個頁面
6.5.2 從行動電話上訪問Servlet並獲得結果
6.5.3 與Web伺服器建立socket連線
6.5.4 從Yahoo獲得股票信息
6.5.5 Google Map API的使用
本章小結
習題六
第7章 J2ME應用程式的性能最佳化
7.1 代碼最佳化的一些基準
7.1.1 記憶體測試基準
7.1.2 時間測試基準
7.2 最佳化記憶體使用
7.2.1 創建和刪除對象
7.2.2 字元串和字元串快取
7.2.3 正確處理記憶體不足
7.3 最佳化代碼運行速度
7.3.1 最佳化循環
7.3.2 使用數組代替對象
7.3.3 使用快取I/O
7.3.4 主動清理記憶體
7.4 用戶界面的最佳化
7.4.1 顯示程式運行的進度
7.4.2 開發易於使用的程式
7.5 合理地打包應用程式
7.5.1 僅僅打包使用的代碼
7.5.2 使用代碼加密保護程式
7.6 J2ME的程式兼容性
7.6.1 J2ME的程式兼容性
7.6.2 JSR介紹
7.6.3 JSR兼容性的測試工具
本章小結
習題七
第8章 kAWT編程
8.1 在J2ME中使用kAWT
8.1.1 在J2MEWirelessToolkit中使用KAWT
8.1.2 命令行方式使用KAWT
8.1.3 Kawt Hello的分析
8.1.4 定製編譯kAWT類庫
8.2 kAWTAPI簡介
8.3 kAWT編程例子
本章小結
習題八
第三篇 高級編程技巧
第9章 J2ME的低級用戶界面設計
9.1 低級用戶界面設計概述
9.1.1 螢幕顯示的基礎——Canvas類
9.1.2 使用Canvas類的“Hello, World!”例子
9.1.3 程式退出的方法
9.2 Happy Push——一個詳細的例子
9.2.1 繪畫出螢幕背景
9.2.2 回響用戶操作
9.2.3 使用Image類畫出圖像
9.2.4 回響重複按鍵或指針移動事件
9.3 編寫MIDlet的啟動畫面
9.3.1 使用報警的方法
9.3.2 使用carlvas類繪製啟動畫面
9.4 編寫一個螢幕保護程式
9.4.1 如何實現Screen Saver
9.4.2 Screen Saver的代碼
9.5 清除螢幕顯示內容
9.5.1 清除螢幕的實現原理
9.5.2 清屏程式的例子
9.6 圖片處理的例子
9.6.1 顯示網路上下載的Png圖片
9.6.2 如何實現滾動顯示圖像
本章小結
習題九
第10章 J2ME遊戲程式設計
10.1 在行動電話上開發遊戲需要討論的問題
10.1.1 在行動電話上開發遊戲的限制
10.1.2 開發遊戲有利的方面
10.2 遊戲編程基本技術
10.2.1 MIDlet的基本結構
10.2.2 使用Canvas對象繪製圖形
10.3 回響遊戲中用戶的按鍵
10.3.1 按鍵事件
10.3.2 遊戲按鍵
10.3.3 回響鍵盤事件
10.3.4 使用通用按鍵
10.4 使用重複按鍵簡化用戶輸入
10.4.1 判斷系統是否支持重複按鍵
10.4.2 模擬重複按鍵
10.4.3 演示重複按鍵的例子
10.4.4 實現連續移動
10.4.5 實現加速移動
10.4.6 演示連續移動和加速移動的例子
10.5 在程式中實現螢幕滾動
10.5.1 定時器
10.5.2 用定時器實現重複按鍵
10.5.3 使用定時器實現螢幕滾動
10.6 實現鏡頭的移動
10.6.1 螢幕滾動和鏡頭移動
10.6.2 鏡頭移動的實現
10.7 在遊戲程式中繪製精靈
10.7.1 在支持透明圖形的系統上實現繪製精靈
10.7.2 在不支持透明圖形的系統中實現繪製精靈
10.8 井字棋的例子
10.8.1 井字棋介紹
10.8.2 原始碼
10.9 網路遊戲編程
10.9.1 網路遊戲介紹
……
第11章 J2ME的無線訊息處理
第12章 J2ME的移動多媒體程式設計
第13章 移動軟體設計技術
第四篇 套用實例分析
第14章 手機日誌系統的設計和實現
第15章 手機考試系統的設計和實現
附錄 習題參考答案
參考文獻
參考資料