《J2ME应用程序开发 手机、PDA程序开发捷径》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:卢军编著
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2002
  • ISBN:7113048838
  • 页数:377 页
图书介绍:

第一部分 J2ME基础知识 3

第1章 J2ME简介 3

1-1 Java版本的演进 4

1-1-1 Java的演进历史 4

1-1-2 Java 1平台 4

1-1-3 Java 2平台 5

1-2 各种Java版本的定位 5

1-2-1 Java不同版本之间的关系 5

1-2-2 J2SE、J2ME、J2EE和Smart Card 5

1-2-3 不同Java版本的虚拟机 6

1-3 J2ME与手机编程的关系 7

1-3-1 手机编程的历史 7

1-3-2 手机上的Java开发平台——J2ME 7

1-4 Java程序开发简述 8

1-4-1 各种Java版本的程序开发关系 8

1-4-2 Java程序开发流程 8

1-5 Java 2 Micro Edition简介 9

1-5-1 使用配置对不同设备进行抽象 10

1-5-2 使用框架对API进行定义 10

1-5-3 J2ME系统体系结构 10

1-5-4 J2ME已有的配置和框架 11

1-5-5 J2ME的技术特性 11

1-6 CDC、CLDC和MIDP简介 12

1-6-1 CDC和CLDC简介 12

1-6-2 典型框架简介 13

1-7 J2ME的一些参考网站 13

1-7-1 主要J2ME的Web站点 13

1-7-2 主要的J2ME讨论区 14

1-8 总结 14

第2章 J2ME开发环境 17

2-1 CLDC和MIDP安装和配置步骤 18

2-1-1 安装软件 18

2-1-2 开发环境的配置 19

2-2 第一个例子——HelloWorld.java 24

2-2-1 HelloWorld.java的源代码 24

2-2-2 编译、预校验和运行 25

2-2-3 快速开发的技巧 26

2-2-4 开发MIDlet的完整流程 27

2-3 在网络上发布MIDlet程序 27

2-4 使用J2ME Wireless Toolkit 30

2-4-1 J2ME Wireless Toolkit的硬件和软件要求 30

2-4-2 J2ME Wireless Toolkit的安装步骤 30

2-4-3 在J2ME Wireless Toolkit中运行例子程序 32

2-4-4 在J2ME Wireless Toolkit中创建自己的程序 34

2-4-5 J2MEWTK中的模拟设备简介 35

2-4-6 在J2MEWTK中进行MIDlet的打包 36

2-5 总结 37

第3章 Java语言入门 39

3-1 Java概述 40

3-1-1 Java语言的特点 40

3-1-2 Java虚拟机(JVM)简介 41

3-1-3 一个简单的Java程序 42

3-1-4 Java中标准类库介绍 43

3-2 数据类型 43

3-2-1 常量与变量 43

3-2-2 整型数据 44

3-2-3 浮点型(实型)数据 44

3-2-4 字符型数据 45

3-2-5 布尔型数据 46

3-3 运算符和表达式 46

3-3-1 算术运算符 46

3-3-2 关系运算符 47

3-3-3 布尔逻辑运算符 47

3-3-4 位运算符 48

3-3-5 赋值运算符 48

3-3-6 条件运算符 49

3-3-7 表达式 49

3-4 流程控制 50

3-4-1 分支语句 50

3-4-2 循环语句 51

3-4-3 特殊循环流程控制 52

3-4-4 注释语句 52

3-5 数组 52

3-5-1 一维数组 52

3-5-2 多维数组 53

3-6 类、对象、包和接口 54

3-6-1 类 54

3-6-2 对象 56

3-6-3 父类、子类和继承 57

3-6-4 包 60

3-6-5 访问权限 61

3-6-6 接口 62

3-7 线程 63

3-7-1 线程 63

3-7-2 线程体的构造 65

3-8 Java网络程序设计 67

3-8-1 网络资源的使用 67

3-8-2 Socket编程 68

3-8-3 数据报编程 69

3-9 总结 70

第4章 CLDC和MIDP API简介 71

4-1 全新的CLDC/MIDP开发环境 72

4-1-1 MIDlet简介 72

4-1-2 应用程序可移植性 72

4-1-3 股票跟踪程序——MIDP的功能 72

4-2 CLDC API简介 73

4-2-1 java.lang 73

4-2-2 java.io 74

4-2-3 java.util 75

4-2-4 javax.microedition.io 76

4-3 MIDP中增加的功能 77

4-3-1 计时器——Timer 77

4-3-2 MIDP在网络通信上的增强 77

4-3-3 数据库功能 78

4-4 MIDP API简介 78

4-4-1 java.util 78

4-4-2 javax.microedition.rms 79

4-4-3 javax.microedition.midlet 79

4-4-4 javax.microedition.io 80

4-4-5 javax.microedition.lcdui 80

4-5 HelloMidlet的详细解释 81

4-5-1 总体运行功能 82

4-5-2 各部分代码功能 84

4-6 总结 85

第二部分 J2ME程序设计 89

第5章 J2ME的用户界面编程 89

5-1 J2ME界面编程概述 90

5-1-1 Display类和屏幕显示部件 90

5-1-2 典型的屏幕显示部件 91

5-1-3 界面设计部件的层次关系 97

5-2 如何使用Display类 97

5-2-1 获得MIDlet的Display类 97

5-2-2 显示Displayable部件 97

5-3 使用Screen类和滚动条 98

5-3-1 Screen类的基本属性 98

5-3-2 在Screen中使用滚动条 98

5-4 使用命令按钮响应用户操作 99

5-4-1 创建命令按钮 100

5-4-2 设置命令按钮的响应函数 101

5-4-3 使用命令按钮的例子 101

5-5 使用文本框输入信息 102

5-5-1 创建一个文本框 103

5-5-2 文本框的演示例子 104

5-6 使用报警显示提示信息 107

5-6-1 两类报警——timed和modal 107

5-6-2 如何使用报警 107

5-6-3 演示报警使用的例子 108

5-7 向用户提供选择——列表 109

5-7-1 生成一个列表 109

5-7-2 响应用户对列表的操作 110

5-7-3 使用列表的完整例子 111

5-8 显示或改变值的大小——标尺 114

5-8-1 标尺的两种类型——交互标尺和非交互标尺 115

5-8-2 交互式标尺 115

5-8-3 非交互式标尺 116

5-9 有效地校验用户输入 118

5-9-1 监测部件状态的变化——ItemStateListener接口 118

5-9-2 对用户输入的字符进行校验 119

5-9-3 输入电话号码的例子 123

5-10 处理日期和时间 125

5-10-1 使用DateField 125

5-10-2 设置正确的日期和时间 126

5-10-3 clearDate()和combineDateTime() 126

5-10-4 使用日期和时间的完整例子 127

5-11 定时执行任务 131

5-11-1 定时器——Timer 132

5-11-2 调度任务的方法 132

5-11-3 星空模拟程序 133

5-12 综合例子——股票价格跟踪程序 135

5-13 总结 138

第6章 J2ME数据库编程 139

6-1 RMS的表——Record Store 140

6-1-1 操作Record Store的方法 140

6-1-2 Record Store的维护信息——Header 143

6-1-3 获得Record Store的其他信息 144

6-1-4 Record Store的限制 144

6-2 在Record Store中操作记录 144

6-2-1 添加记录 145

6-2-2 删除记录 146

6-2-3 修改一条记录 147

6-2-4 监视记录的改变 151

6-2-5 Record Store中记录号的重用问题 154

6-2-6 使用RecordEnumeration遍历记录 155

6-3 创建多列表格 158

6-3-1 编码和解码的方法 159

6-3-2 多列表格的保存 159

6-3-3 检索多列表格 162

6-4 使用RecordComparator对记录进行排序 163

6-4-1 实现RecordComparator接口 163

6-4-2 数据库排序的例子 164

6-5 使用RecordFilter查找记录 167

6-5-1 实现RecordFilter接口 167

6-5-2 查找记录的例子 168

6-6 高效使用RMS的方法 172

6-6-1 减少写记录次数 172

6-6-2 减少读记录次数 173

6-6-3 防止出现“抖动” 174

6-6-4 重用数组 174

6-6-5 高效率使用RMS的例子 175

6-7 总结 180

第7章 J2ME的网络编程 181

7-1 J2ME的网络连接框架 182

7-1-1 J2ME的网络连接层次 182

7-1-2 J2ME中支持的通信协议 183

7-1-3 一个简单的例子 184

7-2 使用HTTP协议通信概述 188

7-2-1 HttpConnection类 188

7-2-2 HTTP通信例子 190

7-3 使用HTTP协议发送和接收数据 194

7-3-1 HTTP协议通信模型 194

7-3-2 发送数据的方法 195

7-3-3 接收数据的方法 197

7-3-4 服务器端的程序 198

7-3-5 使用HTTP协议发送和接收数据的例子 200

7-4 网络通信中的数据加密 205

7-4-1 MIDlet的安全性 205

7-4-2 使用加密类库 206

7-4-3 一个加密类——Encryptor 206

7-4-4 Encryptor的使用 208

7-4-5 数据加密的完整例子 209

7-5 网络通信中常用实例 213

7-5-1 获得指定URL的内容 213

7-5-2 从Web服务器上取回一个页面 215

7-5-3 从移动电话上访问Servlet并获得结果 216

7-5-4 与Web服务器建立socket连接 218

7-5-5 从Yahoo获得股票信息 219

7-6 总结 224

第8章 J2ME应用程序的性能优化 225

8-1 代码优化的一些基准 226

8-1-1 内存测试基准 226

8-1-2 时间测试基准 227

8-2 优化内存使用 227

8-2-1 创建和删除对象 227

8-2-2 字符串和字符串缓存 228

8-2-3 正确处理内存不足 229

8-3 优化代码运行速度 229

8-3-1 优化循环 229

8-3-2 使用数组代替对象 229

8-3-3 使用缓存I/O 230

8-3-4 主动清理内存 230

8-4 用户界面的优化 231

8-4-1 显示程序运行的进度 231

8-4-2 开发易于使用的程序 232

8-5 合理地打包应用程序 232

8-5-1 仅仅打包使用的代码 232

8-5-2 使用代码加密保护程序 232

8-6 总结 233

第三部分 J2ME高级编程 237

第9章 kAWT编程 237

9-1 在J2ME中使用kAWT 238

9-1-1 在J2ME Wireless Toolkit中使用kAWT 238

9-1-2 命令行方式使用kAWT 239

9-1-3 KawtHello的分析 240

9-1-4 定制编译kAWT类库 241

9-2 kAWT API简介 242

9-3 kAWT编程例子 242

9-3-1 KawtDemo——展示kAWT界面设计的威力 242

9-4 总结 248

第10章 J2ME的低级用户界面设计 251

10-1 低级用户界面设计概述 252

10-1-1 屏幕显示的基础——Canvas类 252

10-1-2 使用Canvas类的“Hello,World!”例子 253

10-1-3 程序退出的方法 253

10-2 HappyPush——一个详细的例子 255

10-2-1 绘画出屏幕背景 255

10-2-2 响应用户操作 256

10-2-3 响应指针输入 257

10-2-4 使用Image类画出图像 257

10-2-5 响应重复按键或指针移动事件 258

10-3 编写MIDlet的启动画面 263

10-3-1 使用报警的方法 263

10-3-2 使用Canvas类绘制启动画面 265

10-4 编写一个屏幕保护程序 267

10-4-1 如何实现ScreenSaver 267

10-4-2 ScreenSaver的代码 268

10-5 清除屏幕显示内容 272

10-5-1 清除屏幕的实现原理 272

10-5-2 清屏程序的例子 272

10-6 图片处理的例子 275

10-6-1 显示网络上下载的Png图片 275

10-6-2 如何实现滚动显示图像 279

10-7 总结 286

第11章 J2ME游戏程序设计 287

11-1 在移动电话上开发游戏需要讨论的问题 288

11-1-1 在移动电话上开发游戏的限制 288

11-1-2 开发游戏有利的方面 289

11-2 游戏编程基本技术 289

11-2-1 MIDlet的基本结构 289

11-2-2 使用Canvas对象绘制图形 290

11-3 响应游戏中用户的按键 290

11-3-1 按键事件 290

11-3-2 游戏按键 291

11-3-3 响应键盘事件 291

11-3-4 使用通用按键 293

11-4 使用重复按键简化用户输入 294

11-4-1 判断系统是否支持重复按键 294

11-4-2 模拟重复按键 295

11-4-3 演示重复按键的例子 296

11-4-4 实现连续移动 304

11-4-5 实现加速移动 305

11-4-6 演示连续移动和加速移动的例子 307

11-5 在程序中实现屏幕滚动 317

11-5-1 定时器 317

11-5-2 用定时器实现重复按键 317

11-5-3 使用定时器实现屏幕滚动 318

11-6 实现镜头的移动 322

11-6-1 屏幕滚动和镜头移动 322

11-6-2 镜头移动的实现 323

11-7 在游戏程序中绘制精灵 326

11-7-1 在支持透明图形的系统上实现绘制精灵 326

11-7-2 在不支持透明图形的系统中实现绘制精灵 328

11-8 井字棋的例子 331

11-8-1 井字棋介绍 331

11-8-2 源代码 331

11-9 网络游戏编程 337

11-9-1 网络游戏介绍 337

11-9-2 数据通信的方法 337

11-9-3 简单的网络游戏——NumberPick 338

11-9-4 服务器端的代码 342

11-10 总结 345

第四部分 J2ME应用实例 349

第12章 股票购买售出的例子 349

12-1 Controller接口 350

12-1-1 Controller的功能 350

12-1-2 显示屏幕的管理 350

12-2 开始屏幕——WelcomeScreen 351

12-2-1 显示欢迎信息 352

12-2-2 处理用户输入 352

12-3 购买股票——BuyStockScreen 353

12-3-1 屏幕显示 353

12-3-2 处理用户输入 354

12-4 持有股票——SelectStockScreen 355

12-4-1 显示持有股票 356

12-4-2 处理用户选择的股票 357

12-5 卖出股票——SellStockScreen 357

12-5-1 显示待卖出的股票 357

12-5-2 股票对象——Stock 358

12-6 股票数据库——RMSStockStore 359

12-6-1 查找一个股票 361

12-6-2 买入股票处理 363

12-6-3 返回用户持有的股票 364

12-6-4 Stock对象的存储格式 365

12-7 总结 366

第13章 在线投票的例子 367

13-1 网络编程的回顾 368

13-1-1 HTTP协议通信方法 368

13-1-2 建立HTTP通信连接 369

13-2 VoterMidlet总体框架 369

13-3 进行投票——VoteResults 370

13-3-1 总体结构 370

13-3-2 响应用户输入 370

13-3-3 当前投票结果 371

13-4 与服务器通信——ResourceUtility 371

13-4-1 从服务器接收投票结果的总体方法 371

13-4-2 接收投票数据的详细过程 373

13-4-3 分析获得的投票信息 374

13-4-4 发送用户投票结果到服务器 375

13-5 XML分析工具——XMLUtil 375

13-5-1 XML到VoteSummary类的转变 375

13-5-2 分析XML中的一个节 376

13-6 总结 377