第1讲 集成Java入门 1
1.1 Java的历史 1
1.2 Java的用处 2
1.3 Java开发环境的安装和配置 3
1.3.1 JDK+EditPlus 3
1.3.2 配置环境变量 6
1.3.3 集成开发环境(IDE) 7
1.4 第一个Java程序 7
1.5 Java程序的开发过程 9
1.6 怎么学好Java 9
1.7 本讲小结 10
课后练习 10
第2讲 Java基本语法(一) 11
2.1 标识符和关键字 11
2.2 基本数据类型 12
2.3 变量和常量 13
2.3.1 变量 13
2.3.2 定名常量 13
2.3.3 直接常量 14
2.3.4 指数计数法 14
2.4 赋值 14
2.5 运算符 14
2.5.1 算术运算符 14
2.5.2 关系运算符 16
2.5.3 逻辑运算符 17
2.5.4 按位运算符 18
2.5.5 移位运算符 18
2.5.6 其他运算符 19
2.6 本讲小结 20
课后练习 20
第3讲 Java基本语法(二) 21
3.1 分支 21
3.2 循环 22
3.3 跳转 24
3.4 开关 24
3.5 本讲小结 25
课后练习 25
第4讲 方法和数组 26
4.1 数组 26
4.1.1 一维数组 26
4.1.2 二维数组 31
4.2 方法 33
4.2.1 方法的调用 33
4.2.2 变量的作用域 34
4.2.3 参数的传递 35
4.2.4 方法重载 36
4.3 本讲小结 36
课后练习 36
第5讲 初识面向对象 37
5.1 面向过程程序设计与面向对象程序设计 37
5.2 创建新的数据类型 37
5.3 类的成员 39
5.3.1 成员变量 39
5.3.2 成员方法 40
5.4 构造方法 41
5.5 通过引用访问对象 41
5.5.1 引用类型和引用类型变量 42
5.5.2 引用类型变量和基本类型变量的区别 42
5.5.3 点语法 42
5.5.4 再论参数传递 43
5.6 关键字this 44
5.7 对象数组 45
5.8 数据的存储 46
5.9 本讲小结 46
课后练习 47
第6讲 访问控制 48
6.1 包 48
6.1.1 系统的包 48
6.1.2 自己创建的包 48
6.1.3 打包 49
6.2 访问权限修饰符 51
6.2.1 成员的访问权限 51
6.2.2 类的访问权限 51
6.3 本讲小结 52
课后练习 52
第7讲 系统常用类(一) 53
7.1 Scanner类 53
7.2 字符串 53
7.2.1 不可变长字符串 53
7.2.2 可变长字符串 54
7.2.3 字符串的比较 56
7.3 数据包装类 57
7.4 本讲小结 58
课后练习 58
第8讲 系统常用类(二) 59
8.1 日期和时间类 59
8.1.1 Date类 59
8.1.2 DateFormat类 59
8.1.3 SimpleDateFormate类 60
8.1.4 Calendar类 61
8.1.5 GregorianCalendar类 62
8.2 格式化输出类 62
8.2.1 printf()和format() 63
8.2.2 String.format() 63
8.2.3 Formatter类 63
8.3 Arrays类 64
8.4 Math类 65
8.5 System类 66
8.6 Random类 67
8.7 Class类 67
8.8 本讲小结 68
课后练习 68
第9讲 继承和多态 70
9.1 组合 70
9.2 继承 71
9.2.1 继承的语法 71
9.2.2 父类的初始化 72
9.2.3 再论方法重载 74
9.2.4 变量的隐藏和方法的重写 75
9.2.5 super关键字 75
9.3 final关键字 77
9.3.1 final修饰的变量 77
9.3.2 空白final 77
9.3.3 final修饰的方法 78
9.3.4 final修饰的参数 79
9.3.5 final修饰的类 79
9.4 多态 79
9.4.1 向上转型 80
9.4.2 动态绑定 81
9.4.3 多态的好处 82
9.4.4 多态的缺陷 83
9.5 本讲小结 84
课后练习 84
第10讲 成员的初始化 85
10.1 定义初始化 86
10.2 构造方法初始化 86
10.3 实例语句块 87
10.4 静态数据的初始化 87
10.5 静态语句块 88
10.6 类的加载及初始化顺序 88
10.7 本讲小结 91
课后练习 91
第11讲 抽象类和接口 92
11.1 抽象类和抽象方法 92
11.2 接口 93
11.2.1 接口中的域和方法 93
11.2.2 接口的实现 93
11.2.3 扩展接口 94
11.2.4 嵌套接口 96
11.2.5 接口的好处 97
11.3 本讲小结 99
课后练习 99
第12讲 内部类 100
12.1 成员类 100
12.2 局部内部类 102
12.3 匿名内部类 103
12.4 静态内部类 104
12.5 内部类的继承 105
12.6 内部类的好处 105
12.7 本讲小结 106
课后练习 106
第13讲 异常处理和断言 107
13.1 Java的异常 107
13.2 异常处理机制 108
13.2.1 捕获异常 108
13.2.2 finally 110
13.2.3 声明异常 112
13.2.4 抛出异常 113
13.3 捕获所有异常 113
13.3.1 异常轨迹 113
13.3.2 重新抛出异常 115
13.3.3 异常链 118
13.3.4 异常的丢失 119
13.4 自定义异常 120
13.5 异常的限制 121
13.6 断言 122
13.7 本讲小结 123
课后练习 123
第14讲 Java多线程(一) 125
14.1 Java中的线程 125
14.2 Java多线程的实现 126
14.3 线程池 128
14.3.1 固定尺寸线程池 128
14.3.2 可变尺寸线程池 129
14.3.3 单任务线程池 129
14.4 线程的调度 130
14.4.1 线程休眠 130
14.4.2 线程优先级 131
14.4.3 线程让步 132
14.4.4 线程合并 132
14.5 前台线程和后台线程 133
14.6 本讲小结 134
课后练习 134
第15讲 Java多线程(二) 135
15.1 访问共享资源 135
15.1.1 访问冲突 135
15.1.2 解决冲突 136
15.1.3 静态方法同步 137
15.2 线程间协作 137
15.3 死锁 140
15.4 本讲小结 142
课后练习 142
第16讲 输入/输出(一) 143
16.1 File类 143
16.2 文件过滤器 144
16.3 流 145
16.4 字节流和缓冲字节流 145
16.5 字符流和缓冲字符流 147
16.6 本讲小结 148
课后练习 148
第17讲 输入/输出(二) 149
17.1 文件随机存取 149
17.2 标准输入/输出 150
17.3 对象的序列化和反序列化 152
17.4 本讲小结 153
课后练习 154
第18讲 Java Swing 155
18.1 Swing入门 156
18.1.1 一组例子 156
18.1.2 显示框架 159
18.2 容器 160
18.2.1 顶层容器 160
18.2.2 中间层容器 161
18.3 布局管理 169
18.3.1 BorderLayout 169
18.3.2 FlowLayout 170
18.3.3 GirdLayout 171
18.3.4 CardLayout 172
18.3.5 BoxLayout 174
18.3.6 绝对布局 175
18.4 基本组件 177
18.4.1 AbstractButton 177
18.4.2 菜单 179
18.4.3 标签和文本编辑组件 180
18.4.4 组合框和列表框 182
18.4.5 滑块和进度条 183
18.4.6 选择框 185
18.4.7 表格和树 186
18.5 本讲小结 189
课后练习 189
第19讲 事件处理(一) 190
19.1 Java的事件处理机制 190
19.2 动作事件 193
19.3 调整事件和改变事件 196
19.4 选择事件 197
19.5 文本事件 200
19.6 本讲小结 201
课后练习 201
第20讲 事件处理(二) 202
20.1 焦点事件 202
20.2 窗口事件 204
20.3 鼠标事件 206
20.4 键盘事件 209
20.5 适配器类 210
20.6 本讲小结 211
课后练习 211
第21讲 Java网络编程 212
21.1 InetAddress类 212
21.2 URL类 213
21.3 URLConnection类 216
21.4 Socket通信 217
21.5 无连接的数据报 222
21.6 本讲小结 229
课后练习 229
第22讲 泛型 230
22.1 泛型 230
22.2 自定义泛型类和接口 231
22.3 自定义泛型方法 232
22.4 受限的泛型 233
22.5 原始类型和向后兼容 234
22.6 通配泛型 234
22.7 本讲小结 237
课后练习 237
第23讲 集合 238
23.1 集合框架 238
23.2 Collection 239
23.2.1 Set(规则集) 239
23.2.2 Comparator(比较器接口) 241
23.2.3 List(线性表) 242
23.2.4 Queue(队列) 243
23.2.5 规则集和线性表的性能比较 246
23.3 Map 247
23.4 本讲小结 248
课后练习 248
第24讲 数据库操作 249
24.1 JDBC 249
24.2 结果集及常见方法 250
24.3 操作数据库步骤 252
24.4 一个例子 253
24.5 本讲小结 255
课后练习 255
参考文献 256