《Java程序设计及应用开发》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:宋晏,杨国兴主编;胡倩茹,陈晓美副主编
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2016
  • ISBN:9787111542919
  • 页数:334 页
图书介绍:本书以Java SE 6为基础,按照从面向对象的语言走进面向对象的思想、利用图表增强文字的表现力、注重知识的原理性的编写思想,详细叙述了Java语言的基础知识,面向对象的封装、继承、多态性,Java常用工具类,及图形用户界面、多线程、输入/输出流、JDBC编程等内容。本书配备了丰富的实例,并在“综合实践”部分引入较大规模的案例,通过“习题”和“实验指导”环节,为读者提供拓展思维、提升实践能力的训练。各章习题参照了SCJP考试模式,实验题目丰富、实用,有的放矢地提供编程训练。本书可以作为大学本科、专科计算机及相关专业的教材,也可作为Java自学者的参考书。

第1章 Java程序设计概述 1

1.1 Java程序平台 1

1.2 Java的特性 1

1.3 Java程序设计环境 3

1.3.1 下载、安装和了解JDK 3

1.3.2 集成开发环境Eclipse 5

1.4 Java应用程序 6

1.4.1 Java应用程序的编写 6

1.4.2 命令行方式下的编译和运行 7

1.4.3 使用Eclipse开发Java程序 9

1.5 习题 10

1.6 实验指导 11

1.7 本章思维导图 12

第2章 Java语言基础 13

2.1 标识符和关键字 13

2.2 基本数据类型与变量、常量 14

2.2.1 Java中的整数类型 14

2.2.2 Java中的字符类型 15

2.2.3 浮点类型 15

2.2.4 布尔类型 15

2.2.5 符号常量 16

2.3 运算符 16

2.3.1 算术运算符 16

2.3.2 关系运算符和逻辑运算符 18

2.3.3 位运算符 19

2.3.4 赋值运算符 21

2.3.5 运算符的优先级与结合性 22

2.4 表达式的类型转换 23

2.4.1 数据类型自动转换的规则 23

2.4.2 强制类型转换 24

2.5 流程控制 24

2.5.1 if语句 24

2.5.2 switch语句 26

2.5.3 while循环语句 27

2.5.4 for循环语句 28

2.5.5 do-while循环语句 29

2.5.6 break语句 30

2.5.7 循环的嵌套 31

2.6 方法 33

2.6.1 方法的定义 33

2.6.2 方法的重载 33

2.7 综合实践——简易算术计算器 34

2.8 习题 36

2.9 实验指导 38

2.10 本章思维导图 39

第3章 数组 40

3.1 声明数组 40

3.2 创建数组对象 40

3.3 使用数组 43

3.3.1 数组元素的引用 43

3.3.2 Java方法中的不定长参数与数组 46

3.4 多维数组 47

3.4.1 二维数组的声明和创建 47

3.4.2 不规则二维数组 48

3.4.3 二维数组元素的引用 48

3.5 Java中的for each循环 49

3.6 Arrays类 50

3.6.1 sort()方法 50

3.6.2 copyOf()方法 50

3.7 综合实践——学生成绩查询系统 51

3.7.1 查询系统的数据结构 51

3.7.2 模块化设计 52

3.7.3 控制台命令的读取和控制run() 52

3.7.4 查询某人某门课成绩get() 53

3.8 习题 54

3.9 实验指导 55

3.10 探究与实践——两人对弈的五子棋游戏 56

3.11 本章思维导图 58

第4章 封装与类 59

4.1 封装的意义 59

4.2 定义类 60

4.2.1 面向对象的分析 60

4.2.2 使用class定义类 60

4.3 对象和引用 64

4.3.1 对象和引用的关系 64

4.3.2 this引用 65

4.4 方法的参数传递 65

4.5 关于static 68

4.5.1 static成员 68

4.5.2 变量的使用规则 69

4.5.3 static代码块 70

4.5.4 类常量的定义 71

4.6 包 71

4.6.1 包的创建 72

4.6.2 类的导入 72

4.6.3 含包定义的类的编译及执行 73

4.6.4 classpath环境变量的设置 74

4.6.5 Eclipse下创建package 75

4.7 综合实践——酒店前台客房管理系统 75

4.7.1 类的设计——组合关系 76

4.7.2 客房编号的处理方法 77

4.7.3 Room类设计 78

4.7.4 Hotel类设计 79

4.7.5 客户端Client类实现 80

4.8 习题 81

4.9 实验指导 84

4.10 本章思维导图 86

第5章 类的继承 87

5.1 继承 87

5.1.1 继承的概念 87

5.1.2 继承的实现 88

5.1.3 类成员的访问控制 90

5.2 重写父类方法 92

5.2.1 重写及其意义 92

5.2.2 Object类与重写toString()方法 93

5.2.3 调用父类被重写的方法 95

5.2.4 Object类的clone()方法与深、浅复制 95

5.3 子类对象的构造 99

5.3.1 子类对象的构造过程 99

5.3.2 super与this调用构造方法 100

5.4 Java修饰符 101

5.4.1 final修饰符 101

5.4.2 Java修饰符之间的关系 103

5.5 继承和组合 104

5.5.1 继承复用 104

5.5.2 组合复用 105

5.6 习题 105

5.7 实验指导 106

5.8 本章思维导图 109

第6章 多态性 110

6.1 多态 110

6.1.1 多态性 111

6.1.2 静态绑定和动态绑定 112

6.1.3 instanceof运算符 112

6.2 抽象类 114

6.2.1 抽象类及抽象方法的定义 114

6.2.2 为什么设计抽象类 115

6.2.3 开闭原则 115

6.3 接口 118

6.3.1 接口的定义和实现 118

6.3.2 接口与抽象类的区别 120

6.4 面向接口的编程 122

6.4.1 案例分析 122

6.4.2 面向接口编程的代码组织 124

6.5 综合实践——格式化输出学生对象数据 126

6.5.1 系统架构 126

6.5.2 面向接口编程的代码 127

6.6 习题 130

6.7 实验指导 132

6.8 思维导图 134

6.8.1 本章思维导图 134

6.8.2 面向对象部分思维导图 135

第7章 常用工具类 136

7.1 字符串处理类 136

7.1.1 Java中String对象的管理 136

7.1.2 String类的常用方法 140

7.1.3 StringBuilder和StringBuffer类 143

7.2 正则表达式 146

7.2.1 正则表达式的语法 146

7.2.2 String类中操作正则表达式的方法 148

7.3 包装类 148

7.3.1 Integer类 149

7.3.2 自动封箱和解封 150

7.4 日期类 152

7.4.1 Date类 152

7.4.2 Calendar类 152

7.4.3 SimpleDateFormat类 154

7.4.4 阅读API文档 155

7.5 习题 156

7.6 实验指导 157

7.7 本章思维导图 159

第8章 集合 160

8.1 Java中的集合框架 160

8.1.1 集合框架的常用部分 160

8.1.2 迭代器Iterator接口 161

8.2 List及其实现类 163

8.2.1 List接口 163

8.2.2 ArrayList 164

8.2.3 LinkedList 166

8.3 Set及其实现类 167

8.3.1 Set接口 167

8.3.2 HashSet 167

8.3.3 TreeSet 170

8.4 Map及其实现类 175

8.4.1 Map接口 175

8.4.2 HashMap 176

8.4.3 Hashtable及其子类Properties 177

8.5 泛型 178

8.5.1 泛型的意义 179

8.5.2 认识和使用泛型 179

8.6 Collections集合工具类 180

8.6.1 List的增补功能 180

8.6.2 多线程封装 181

8.7 回首Java集合框架 182

8.8 综合实践——控制台版考试系统 183

8.8.1 类的设计 183

8.8.2 代码 185

8.9 习题 188

8.10 实验指导 190

8.11 本章思维导图 193

第9章 异常处理 194

9.1 Java异常体系 194

9.2 异常的捕获和处理 196

9.2.1 try-catch-finally语句 196

9.2.2 try-catch-finally语句的执行过程 199

9.3 使用throws抛出异常 200

9.4 自定义异常类 201

9.4.1 自定义异常类的方法 201

9.4.2 throw抛出异常 202

9.4.3 异常处理的5个关键字 203

9.5 综合实践——用户管理系统及其异常类设计 203

9.5.1 系统设计 203

9.5.2 自定义异常类 204

9.5.3 UserDaoForMap类 205

9.5.4 Application类 205

9.5.5 Test类 206

9.6 习题 207

9.7 实验指导 208

9.8 本章思维导图 210

第10章 图形用户界面与事件处理 211

10.1 AWT组件及应用 211

10.1.1 AWT和Swing概述 211

10.1.2 AWT组成 212

10.1.3 AWT的容器 212

10.1.4 布局管理器 214

10.2 事件处理 217

10.2.1 事件处理的原理 217

10.2.2 利用成员内部类实现事件监听 219

10.2.3 利用匿名内部类实现事件监听 220

10.2.4 适配器模式实现事件监听 221

10.2.5 实现计算器的功能部分 222

10.3 Swing组件 223

10.4 综合实践——用户管理系统与常用Swing组件的应用 224

10.4.1 主界面与Swing组件的应用 224

10.4.2 注册界面与Swing组件的应用 229

10.4.3 浏览用户界面与JTable组件的应用 234

10.5 习题 238

10.6 实验指导 238

10.7 本章思维导图 240

第11章 多线程 241

11.1 线程的概念 241

11.2 线程的创建和执行 242

11.2.1 继承Thread类创建线程 242

11.2.2 实现Runnable接口创建线程 243

11.3 线程的状态与生命周期 245

11.3.1 新建和就绪状态 245

11.3.2 运行状态 245

11.3.3 阻塞状态 246

11.3.4 死亡状态 246

11.4 线程优先级与线程调度策略 246

11.5 线程同步 250

11.5.1 数据共享问题 250

11.5.2 同步和锁机制 250

11.5.3 同步代码块 251

11.5.4 同步方法 254

11.5.5 线程安全的集合类 256

11.6 线程间的通信 258

11.6.1 wait()和notify ()方法 258

11.6.2 消费者和生产者模型 261

11.6.3 使用BlockingQueue控制线程通信 265

11.7 习题 266

11.8 实验指导 268

11.9 本章思维导图 269

第12章 输入/输出流 270

12.1 Java流的类层次结构 270

12.2 文件 272

12.2.1 File类 272

12.2.2 RandomAccessFile类 274

12.3 字节流 278

12.3.1 抽象类InputStream和OutputStream 278

12.3.2 文件流FileInputStream和FileOutputStream 279

12.3.3 缓冲流BufferedInputStream和BufferedOutputStream 280

12.3.4 数据过滤流DataInputStream和DataOutputStream 282

12.3.5 打印流PrintStream 284

12.3.6 序列化接口Serializable与对象流ObjectInputStream和ObjectOutputStream 285

12.3.7 字节数组流ByteArrayInputStream和ByteArrayOutputStream 287

12.4 字符流 288

12.4.1 抽象类Reader和Writer 289

12.4.2 转换流InputStreamReader和OutputStream Writer 289

12.4.3 FileReader和FileWriter 289

12.4.4 BufferedReader类 293

12.4.5 PrintWriter类 293

12.5 输入/输出流汇总 295

12.6 习题 297

12.7 实验指导 299

12.8 本章思维导图 300

第13章 数据库访问技术 301

13.1 MySQL数据库与SQL语法 301

13.1.1 MySQL数据库的安装 301

13.1.2 MySQL数据库的常用命令 304

13.1.3 SQL语句 307

13.2 JDBC的体系结构和JDBC驱动程序的实现方式 309

13.2.1 JDBC的体系结构 309

13.2.2 JDBC驱动程序的实现方式 309

13.3 建立JDBC数据库连接 310

13.3.1 JDBC API的主要类和接口 311

13.3.2 连接数据库 311

13.4 使用JDBC访问数据库 315

13.4.1 Statement与数据表的增、删、改 315

13.4.2 PreparedStatement与数据表的增、删、改 318

13.4.3 数据表的查询与ResultSet 319

13.5 综合实践——数据库访问的开发模式 324

13.5.1 基于数据库存储的用户管理系统 325

13.5.2 业务层——封装DAO中的方法 326

13.5.3 应用层——调用业务层方法完成系统功能 327

13.6 习题 329

13.7 实验指导 329

13.8 探究与实践——用户管理系统的权限管理 331

13.9 本章思维导图 333

参考文献 334