第1章 面向对象软件开发概述 1
1.1 面向对象问题求解的提出 1
1.2 面向对象问题求解概述 2
1.3 对象、类与实体 3
1.4 对象的属性与相互关系 4
1.4.1 对象的属性 4
1.4.2 对象的关系 5
1.5 面向对象的软件开发过程 6
1.5.1 面向对象的分析 6
1.5.3 面向对象的实现 8
1.5.2 面向对象的设计 8
1.6 面向对象程序设计方法的优点 9
1.6.1 可重用性 9
1.6.2 可扩展性 10
1.6.3 可管理性 11
1.7 小结 12
习题 12
第2章 Java概述 13
2.1 第一个Java Application程序 13
2.1.1 源程序编辑 13
2.1.2 字节码的编译生成 14
2.1.3 字节码的解释与运行 16
2.2 第一个Java Applet程序 17
2.2.1 源程序的编辑与编译 17
2.2.2 代码嵌入 19
2.2.3 Applet的运行 20
2.3 图形界面的输入输出 22
2.3.1 Java Applet图形界面输入输出 22
2.3.2 Java Application图形界面输入输出 24
2.4 字符界面的输入输出 27
2.5 Java语言的特点 29
习题 30
2.6 小结 30
第3章 Java语言基础 31
3.1 Java程序的构成 31
3.2 数据类型、变量与常量 32
3.2.1 数据类型 32
3.2.2 标识符 33
3.2.3 常量 34
3.2.4 变量 35
3.3 表达式 39
3.3.1 赋值与强制类型转换 39
3.3.2 算术运算 40
3.3.3 关系运算 43
3.3.4 逻辑运算 44
3.3.5 位运算 45
3.3.6 其他运算符 46
3.3.7 运算符的优先级与结合性 47
3.3.8 注释 47
3.4 流程控制语句 48
3.4.1 结构化程序设计的三种基本流程 48
3.4.2 分支语句 49
3.4.3 循环语句 52
3.4.4 跳转语句 56
3.5 小结 57
习题 57
第4章 抽象、封装与类 59
4.1 抽象与封装 59
4.1.1 抽象 59
4.1.2 封装 60
4.2 Java的类 60
4.2.1 系统定义的类 60
4.2.2 用户程序自定义类 63
4.2.3 创建对象与定义构造函数 65
4.3.1 抽象类 69
4.3 类的修饰符 69
4.3.2 最终类 70
4.4 域 71
4.5 方法 75
4.6 访问控制符 80
4.7 小结 85
习题 85
第5章 继承与多态 87
5.1 继承 87
5.2.1 派生子类 88
5.2 Java的继承 88
5.2.2 域的继承与隐藏 91
5.2.3 方法的继承与覆盖 95
5.2.4 this与super 98
5.3 多态 102
5.4 Java的重载 104
5.5 构造函数的继承与重载 107
5.6 包 113
5.6.1 创建包 113
5.6.2 包的引用 115
5.7 接口 116
5.7.1 接口概述 116
5.7.2 声明接口 117
5.7.3 实现接口 119
5.8 小结 120
习题 121
第6章 工具类与算法 124
6.1 语言基础类库 124
6.1.1 Object类 124
6.1.2 数据类型类 124
6.1.3 Math类 126
6.1.4 System类 126
6.2.1 Applet的基本工作原理 127
6.2 Applet类与Applet小程序 127
6.2.2 Applet类 128
6.2.3 HTML文件参数传递 132
6.3 数组 134
6.4 向量 136
6.5 字符串 139
6.5.1 String类 139
6.5.2 StringBuffer类 143
6.5.3 Java Application命令行参数 145
6.6 递归 147
6.7.1 冒泡排序 150
6.7 排序 150
6.7.2 选择排序 154
6.7.3 插入排序 155
6.7.4 桶排序 156
6.8 查找 158
6.9 链表 162
6.9.1 链表的节点 162
6.9.2 创建链表 163
6.9.3 遍历链表 165
6.9.5 链表的删除操作 166
6.9.4 链表的插入操作 166
6.10 队列 168
6.11 堆栈 170
6.12 二叉树 173
6.13 小结 180
习题 180
第7章 图形用户界面的设计与实现 183
7.1 图形用户界面概述 183
7.2 用户自定义成分 185
7.2.1 绘制图形 185
7.2.2 显示文字 186
7.2.3 控制颜色 188
7.2.4 显示图像 190
7.2.5 实现动画效果 191
7.3 Java的事件处理 192
7.4 GUI标准组件概述 195
7.5 标签、按钮与动作事件 197
7.6 文本框、文本区域与文本事件 200
7.7 单、复选按钮,列表与选择事件 203
7.8 滚动条与调整事件 213
7.9 画布与鼠标、键盘事件 217
7.10.1 FlowLayout 224
7.10 布局设计 224
7.10.2 BorderLayout 225
7.10.3 CardLayout 227
7.10.4 GridLayout 228
7.11 Panel与容器事件 230
7.12 Frame与窗口事件 233
7.13 菜单的定义与使用 236
7.14 对话框、组件事件与焦点事件 242
7.15 小结 247
习题 247
8.1 异常处理 249
8.1.1 异常与异常类 249
第8章 Java高级编程 249
8.1.2 抛出异常 252
8.1.3 异常的处理 253
8.2 Java多线程机制 256
8.2.1 Java中的线程 256
8.2.2 Java的线程类与Runnable接口 258
8.2.3 如何在程序中实现多线程 259
8.3 Swing GUI组件 264
8.3.1 JApplet 264
8.3.2 JButton 265
8.3.3 JSlider 268
8.3.4 JPasswordField 270
8.3.5 JTabbedPane 271
8.4 流式输入输出与文件处理 273
8.4.1 Java输入输出类库 274
8.4.2 文件的处理与随机访问 279
8.5 用Java实现底层网络通信 288
8.5.1 基于连接的流式套接字 288
8.5.2 无连接的数据报 296
8.6 Java程序对网上资源的访问 301
8.7 小结 308
习题 308