图书目录

目    录

第1章  快速入门 1

1.1  Java简介 1

1.1.1  发展简史 1

1.1.2  Java的特点 2

1.2  Java开发环境的构建 4

1.2.1  Java开发包的安装 4

1.2.2  环境变量的设定 6

1.2.3  基本DOS命令 7

1.3  Java应用程序 9

1.3.1  编写源代码 9

1.3.2  编译源代码 10

1.3.3  运行程序 11

1.3.4  常见问题解答 12

1.3.5  理解例子 13

1.4  Java Applet 16

1.4.1  编写Applet源代码 16

1.4.2  编写嵌入Applet的HTML

文件 17

1.4.3  运行Applet 17

1.5  Eclipse开发工具 18

1.5.1  Eclipse简介与安装 18

1.5.2  汉化Eclipse 20

1.5.3  使用Eclipse开发Java项目 21

习题 23

第2章  Java基本语法 24

2.1  变量 24

2.1.1  基本数据类型 25

2.1.2  变量 28

2.1.3  变量的作用域 28

2.1.4  变量的初始化 30

2.2  操作符 31

2.2.1  算术操作符 31

2.2.2  关系与条件操作符 33

2.2.3  位操作符 34

2.2.4  其他类型操作符 35

2.2.5  数字类型转换 36

2.2.6  操作符优先级 38

2.2.7  表达式、语句和块 39

2.3  字符串 40

2.3.1  字符串连接 41

2.3.2  修改字符串 41

2.3.3  判断字符串是否相等 42

2.3.4  使用帮助文档 43

2.4  控制流 45

2.4.1  if条件语句 45

2.4.2  for 循环语句 46

2.4.3  while/do while循环语句 47

2.4.4  switch分支选择语句 48

2.4.5  break、continue 50

2.5  数组 52

2.5.1  一维数组 52

2.5.2  数组复制 55

2.5.3  多维数组 55

2.5.4  Java 8增强的数组功能 57

2.6  案例实训 58

习题 59

第3章  类与继承 60

3.1  类和对象 60

3.1.1  类声明 60

3.1.2  类成员 61

3.1.3  关键字this 67

3.1.4  方法重载 68

3.1.5  类继承 69

3.1.6  类的初始化过程 70

3.1.7  源文件 72

3.2  面向对象特性 73

3.2.1  封装性 73

3.2.2  继承性 75

3.2.3  多态性 79

3.3  关键字static 80

3.4  关键字final 82

3.4.1  final变量 82

3.4.2  final方法 83

3.4.3  final类 83

3.5  对象复制 84

3.6  内部类 86

3.7  案例实训 88

习题 89

第4章  接口、抽象类与包 93

4.1  接口 93

4.1.1  接口定义 93

4.1.2  接口的实现 94

4.1.3  接口作为类型 96

4.1.4  接口不应改变 97

4.2  抽象类 97

4.2.1  抽象方法 98

4.2.2  抽象类 98

4.2.3  抽象类和接口的比较 100

4.3  包 102

4.3.1  包的作用 102

4.3.2  包命名 103

4.3.3  包的使用 104

4.4  案例实训 106

习题 107

第5章  Java基础类库 109

5.1  常用类 109

5.1.1  Object类 109

5.1.2  Java 7新增的Objects类 111

5.1.3  String、StringBuffer和

StringBuilder类 112

5.1.4  Math类 116

5.1.5  Java 7的ThreadLocalRandom

与Random 118

5.1.6  BigDecimal类 121

5.2  Java 8的日期、时间类 124

5.2.1  Date类 124

5.2.2  Calendar类 125

5.2.3  Java 8新增的日期、

时间包 129

5.3  正则表达式 132

5.3.1  创建正则表达式 132

5.3.2  使用正则表达式 136

5.4  案例实训 140

习题 141

第6章  异常处理 142

6.1  概述 142

6.2  异常处理 142

6.2.1  遭遇异常 142

6.2.2  捕获并处理异常 144

6.2.3  声明方法抛出异常 148

6.3  异常的抛出策略 150

6.3.1  不要声明抛出所有异常 151

6.3.2  异常声明的数量 152

6.3.3  保持throws子句的稳定性 153

6.3.4  异常抛出策略小结 153

6.4  异常的捕获策略 154

6.4.1  混淆的异常 154

6.4.2  代码重构的困难 154

6.4.3  捕获超级异常的合理情形 156

6.4.4  异常捕获策略小结 156

6.5  案例实训 157

习题 157

第7章  GUI编程 159

7.1  Swing起步 159

7.1.1  Swing概述 159

7.1.2  一个GUI实例 160

7.1.3  面板 161

7.1.4  改变应用程序的观感 164

7.2  AWT事件处理 165

7.2.1  事件处理简介 165

7.2.2  事件处理实例 166

7.2.3  使用事件适配器 170

7.2.4  AWT事件继承关系 172

7.3  布局管理 173

7.3.1  流式布局 173

7.3.2  边框布局 175

7.3.3  网格布局 176

7.3.4  网格袋布局 177

7.4  常用GUI组件 183

7.4.1  标签 183

7.4.2  文本输入类组件 185

7.4.3  选择类组件 192

7.4.4  菜单类组件 199

7.4.5  对话框 205

7.4.6  表格 212

7.5  案例实训 219

习题 220

第8章  网络编程 221

8.1  网络编程的基本概念 221

8.1.1  网络基础 221

8.1.2  TCP/IP协议簇 221

8.1.3  TCP与UDP 222

8.2  InetAddress类 224

8.2.1  创建InetAddress对象 224

8.2.2  类InetAddress的应用 225

8.3  TCP程序设计 227

8.3.1  Java客户端套接字 227

8.3.2  Java服务器套接字 232

8.4  UDP程序设计 237

8.4.1  DatagramPacket类 237

8.4.2  DatagramSocket类 239

8.5  URL程序设计 244

8.5.1  URL类 245

8.5.2  URLConnection类 248

8.6  案例实训 251

习题 251

第9章  Java I/O系统 253

9.1  文件类 253

9.1.1  文件类File 253

9.1.2  文件过滤 257

9.2  Java I/O结构 259

9.2.1  字节流 259

9.2.2  字符流 261

9.3  使用流 262

9.3.1  标准流 262

9.3.2  文件流 264

9.3.3  过滤器流 268

9.3.4  随机访问文件 271

9.3.5  读取器和写出器 273

9.4  对象序列化 275

9.5  案例实训 277

习题 278

第10章  访问数据库 279

10.1  JDBC简介 279

10.2  建立数据库连接 280

10.2.1  使用JDBC/ODBC桥接

 驱动程序 281

10.2.2  使用JDBC驱动程序 282

10.2.3  使用配置文件 284

10.3  执行SQL语句 285

10.3.1  executeUpdate 286

10.3.2  executeQuery 286

10.3.3  executeBatch 288

10.4  使用PreparedStatement 288

10.5  事务处理 290

10.6  编写数据库工具类 291

10.7  一个实例 296

10.7.1  数据库 296

10.7.2  布局及功能简介 296

10.8  案例实训 297

习题 298

第11章  多线程 301

11.1  什么是线程 301

11.2  一个简单的例子 301

11.3  定制线程类 303

11.3.1  继承线程类 303

11.3.2  实现Runnable接口 304

11.4  线程的生命周期 305

11.4.1  创建线程 305

11.4.2  启动线程 305

11.4.3  线程运行 306

11.4.4  线程阻塞 306

11.4.5  终止线程 306

11.5  线程中断 307

11.6  线程的优先级 308

11.6.1  利己线程 309

11.6.2  分时方式 310

11.7  线程同步 310

11.7.1  对象锁 313

11.7.2  可重入锁 314

11.7.3  notifyAll和wait方法 314

11.8  案例实训 317

习题 318

第12章  项目实践一:贪吃蛇游戏 320

12.1  系统简介 320

12.2  功能设计 320

12.2.1  需求分析 320

12.2.2  流程设计 321

12.2.3  总体设计 321

12.2.4  模块详细设计 322

12.3  界面设计 323

12.4  代码实现 323

12.4.1  主程序类 323

12.4.2  主窗口界面设置 324

12.4.3  相关组件设置 325

12.4.4  Snake模型设置 325

12.4.5  游戏运行面板设置 326

12.4.6  运行系统 326

  

习题 327

第13章  项目实践二:开发电力系统  

 ?中的收费结算系统 328

13.1  系统简介 328

13.2  功能设计 328

13.2.1  计量模拟程序 328

13.2.2  结算收费系统 329

13.3  数据库设计 330

13.4  代码实现 332

13.4.1  计量模拟 332

13.4.2  快闪屏 332

13.4.3  系统参数设置对话框 333

13.4.4  基础资料管理 334

13.4.5  出账、审核及收费 335

13.4.6  运行系统 335

习题 337

第14章  项目实践三:基于Socket的

 ?聊天程序 338

14.1  系统简介 338

14.2  功能设计 338

14.2.1  服务器端设计 338

14.2.2  客户端设计 338

14.2.3  Common模块设计 340

14.3  代码实现 341

14.3.1  服务器端 341

14.3.2  客户端 342

14.3.3  Common模块 345

习题 347

附录A  参数传递 348

附录B  各章习题参考答案 355