第1章 Java简介与开发环境设置 1
1.1 Java产生的历史 1
1.2 Java的现状 1
1.3 Java语言的特点 2
1.4 与C和C++语言的异同 4
1.5 Java的应用简介 5
1.6 安装设置JaVa编译运行环境 5
第2章 Java程序一窥 8
2.1 第1个Java程序HelloJava 8
2.2 程序 9
2.3 变量 10
2.4 函数 12
第3章 Java语言基础 14
3.1 概述 14
3.2 程序注解 14
3.3 标示符和关键字 16
3.4 Java数据类型 18
3.4.1 布尔类型 19
3.4.2 字符类型 20
3.4.3 字符串 21
3.4.4 整数类型 22
3.4.5 浮点类型和双精度类型 23
3.5.1 面向对象概念 24
3.5 非原始数据类型 24
3.5.2 面向对象编程 25
3.5.3 原始数据类型同类类型的比较 26
3.5.4 引用 28
3.5.5 函数参数传递 30
3.6 数组 32
3.6.1 数组元素的访问 33
3.6.2 非原始数据类型数组 34
3.6.3 多维数组 35
3.6.4 数组复制 36
4.2 符号 38
4.2.1 赋值操作 38
4.1 概述 38
第4章 操作符号和流程控制 38
4.2.2 数学运算 40
4.2.3 类型转换cast 44
4.2.4 自加运算 47
4.2.5 比较操作符号 48
4.2.6 布尔操作符 50
4.2.7 位运算 52
4.2.8 问号操作符 54
4.3.1 if/else 55
4.3 流程控制 55
4.3.2 switch 57
4.3.3 While和do/while循环 58
4.3.4 for循环 60
4.3.5 break和continue 63
4.3.6 循环的标签 64
4.3.7 异常 66
第5章 面向对象基础 67
5.1 构造函数 67
5.2 函数的重载 68
5.3 This引用 70
5.4 构造函数的重载 71
5.5 静态函数和变量 73
5.6 静态初始化 75
5.7 数据封装 77
5.8 包 79
5.9 import 82
5.10 类的可访问性 85
5.11 对象的继承 87
5.12 多态 100
5.13 函数的覆盖 109
6.1.1 final变量 117
6.1 final关键字 117
第6章 高级语言特性 117
6.1.2 final的函数 119
6.1.3 final类 120
6.2 抽象类 120
6.3 接口 125
6.4 内部类 134
6.4.1 静态内部类 134
6.4.2 实例内部类 136
6.4.3 局部内部类 138
6.4.4 匿名类 139
6.5.1 equal方法 142
6.5 Object类 142
6.5.2 toString方法 145
6.5.3 getClass方法 147
6.6 反射类 147
6.7 封装类 151
6.8 集合类 152
6.8.1 概述 152
6.8.2 ArrayList 153
6.8.3 Vector 154
6.8.4 LinkedList 156
6.8.5 Stack 157
6.8.6 HashSet 158
6.8.7 TreeSet 160
6.8.8 HashMap 162
6.8.9 总结 163
第7章 异常处理 164
7.1 异常概念 164
7.2 常规处理异常方式 165
7.3 Java异常处理 166
7.4 函数调用栈 168
7.5 捕获异常 169
7.6 异常流转 171
7.7 异常的控制 174
7.8 自定义异常 176
7.9 捕获所有异常 179
7.10 运行期异常 181
7.11 finally程序块 185
7.12 error 188
7.13 总结 189
第8章 图形用户界面 190
8.1 AWT概念 190
8.2 第一个GUI程序 190
8.3 容器类 191
8.3.1 Applet 192
8.3.2 Frame类 193
8.3.3 Dialog类 194
8.3.4 Panel类 197
8.4 布局管理器(Layout Manager) 198
8.4.1 BorderLayout 198
8.4.2 FlowLayout 200
8.4.3 GridLayout 201
8.4.4 CardLayout 203
8.4.5 GridBagLayout 206
8.4.6 使用多个布局管理 212
8.5 AWT基本组件 213
8.5.1 按钮Button 213
8.5.2 标签Label 215
8.5.3 文本区TextArea 216
8.5.4 文本框TextField 217
8.5.5 列表框List 220
8.5.6 核选框CheckBox 222
8.6 AWT事件处理 225
8.6.1 概述 225
8.6.2 处理多种事件 228
9.1 用程序理解线程 231
第9章 线程 231
9.2 线程概念 232
9.3 创建线程 233
9.3.1 通过接口来创建线程 234
9.3.2 匿名类来创建线程 235
9.4 线程相关方法 236
9.4.1 获取设置线程的名字 236
9.4.2 使用Thread.currentThread()方法 237
9.4.3 使用sleep()方法 239
9.4.4 使用join()方法 241
9.4.5 使用interrupt()方法 242
9.5 安全地使一个线程停止 245
9.6 精灵线程 246
9.7 线程的优先级 248
9.8 yield()方法 250
9.9 并发访问 252
9.10 wait()和notify()方法 267
9.11 线程死锁 275
9.12 线程组 278
第10章 I/O 281
10.1 概述 281
10.2 InputStream 282
10.2.1 循环读取数据 284
10.2.2 skip方法 286
10.3 文件输入输出流 288
10.4 字节数组输入输出流 289
10.5 序列输入流 291
10.6 管道输入输出流 292
10.7 数据转换 294
10.8 解析字节流 296
10.9 对屏幕的输出 299
10.10 编码概念 300
10.11 GBK与UNICODE 302
10.12 字符流 303
10.13 FILTER流 306
10.14 对象序列化 308
10.15 工具类 312
10.16 随机访问文件 313
第11章 相关应用介绍 316
11.1 概述 316
11.2 基于TCP网络程序 317
11.3 实现协议 321
11.4 实现一个Web服务器 324
11.5 实现一个简单的TOMCAT服务器 327
11.6 UDP编程 329