《Java程序设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:唐大仕编著;蔡翠平主编
  • 出 版 社:北京:清华大学出版社;北京:北京交通大学出版社
  • 出版年份:2015
  • ISBN:9787512121898
  • 页数:374 页
图书介绍:本书主要介绍Java语言的基础知识,面向对象的特点、Java基本类库以及Java的基本应用,包括I/O、文本界面、图形界面等,以使学习者对Java语言有全部的认识。同时介绍一些高级应用,如数据库编程、网络编程、多媒体编程等内容以利于学习者能了解Java的实际应用及最新发展。

第1章 Java语言与面向对象的程序设计 1

1.1 Java语言简介 1

1.1.1 Java语言的发展 1

1.1.2 Java三大平台 2

1.1.3 Java语言的特点 3

1.1.4 Java和C、C+++比较 5

1.2 面向对象程序设计 6

1.2.1 面向对象概述 6

1.2.2 对象、类与实体 7

1.2.3 对象的状态与行为 7

1.2.4 对象的关系 8

1.2.5 面向对象的软件开发过程 9

习题 10

第2章 简单的Java程序 11

2.1 Application与Applet程序 11

2.1.1 Application程序 11

2.1.2 Applet程序 12

2.1.3 Java程序的基本构成 13

2.2 程序的编辑、编译与运行 15

2.2.1 Java工具包JDK 15

2.2.2 Application的编辑、编译与运行 15

2.2.3 Applet的编辑、编译与运行 18

2.2.4 使用iar打包程序 20

2.3 Java程序中的基本输入与输出 21

2.3.1 字符界面的输入与输出 21

2.3.2 Applet图形界面输入与输出 23

2.3.3 Application图形界面输入与输出 24

2.3.4 同时作为Application与Applet的程序 26

2.4 Java集成开发环境 27

2.4.1 几种辅助工具的使用 27

2.4.2 几种集成工具的使用 29

2.4.3 建构工具及代码混淆 33

习题 34

第3章 数据运算、流程控制和数组 35

3.1 数据类型、变量与常量 35

3.1.1 数据类型 35

3.1.2 标识符 36

3.1.3 常量 36

3.1.4 变量 37

3.1.5 程序的注释 38

3.2 运算符与表达式 39

3.2.1 算术运算符 40

3.2.2 关系运算符 42

3.2.3 逻辑运算符 42

3.2.4 位运算符 43

3.2.5 赋值与强制类型转换 47

3.2.6 条件运算符 48

3.2.7 表达式及运算的优先级、结合性 48

3.3 流程控制语句 49

3.3.1 结构化程序设计的三种基本流程 49

3.3.2 简单语句 50

3.3.3 分支语句 50

3.3.4 循环语句 56

3.3.5 跳转语句 61

3.4 数组 63

3.4.1 一维数组 63

3.4.2 多维数组 67

3.4.3 数组与增强的for语句 69

3.4.4 数组的复制 69

习题 69

第4章 类、包和接口 71

4.1 类、字段、方法 71

4.1.1 定义类中的字段和方法 71

4.1.2 构造方法与对象的创建 73

4.1.3 使用对象 74

4.1.4 方法的重载 74

4.1.5 this的使用 76

4.2 类的继承 77

4.2.1 派生子类 77

4.2.2 字段的继承、隐藏与添加 78

4.2.3 方法的继承、覆盖与添加 78

4.2.4 super的使用 79

4.2.5 父类对象与子类对象的转换 80

4.3 包 83

4.3.1 package语句 83

4.3.2 import语句 84

4.3.3 编译和运行包中的类 85

4.3.4 CLASSPATH变量 85

4.4 访问控制符 86

4.4.1 成员的访问控制符 86

4.4.2 类的访问控制符 90

4.4.3 setter与getter 91

4.4.4 构造方法的隐藏 91

4.5 非访问控制符 91

4.5.1 static 92

4.5.2 final 94

4.5.3 abstract 96

4.5.4 其他修饰符 98

4.5.5 一个应用模式——单子 98

4.6 接口 99

4.6.1 接口的概念 99

4.6.2 定义接口 100

4.6.3 实现接口 101

4.6.4 对接口的引用 102

4.6.5 Java8对接口的扩展 103

4.7 枚举 103

4.7.1 枚举的基本用法 103

4.7.2 枚举的深入用法 104

习题 105

第5章 深入理解Java语言 106

5.1 变量及其传递 106

5.1.1 基本类型变量与引用型变量 106

5.1.2 字段变量与局部变量 107

5.1.3 变量的传递 108

5.1.4 变量的返回 109

5.1.5 不定长参数变量 109

5.2 多态与虚方法调用 110

5.2.1 上溯造型 110

5.2.2 虚方法调用 111

5.2.3 动态类型确定 113

5.3 对象构造与初始化 114

5.3.1 调用本类或父类的构造方法 114

5.3.2 构造方法的执行过程 117

5.3.3 构造方法内部调用的方法的多态性 118

5.3.4 实例初始化与静态初始化 119

5.4 对象清除与垃圾回收 120

5.4.1 对象的自动清除 120

5.4.2 System.gc()方法 121

5.4.3 finalize()方法 121

5.5 内部类与匿名类 122

5.5.1 内部类 123

5.5.2 方法中的局部类及匿名类 126

5.5.3 匿名类 127

5.6 Lambda表达式与函数式接口 128

5.6.1 Lambda表达式的书写与使用 128

5.6.2 函数式接口 129

5.6.3 高阶函数 132

5.7 注解与反射 133

5.7.1 注解的定义与使用 133

5.7.2 反射 135

习题 140

第6章 异常处理 142

6.1 异常处理 142

6.1.1 异常的概念 142

6.1.2 捕获和处理异常 144

6.1.3 应用举例 147

6.2 创建用户自定义异常类 149

6.2.1 自定义异常类 149

6.2.2 重抛异常及异常链接 151

6.3 异常与资源管理 153

6.3.1 使用finally 153

6.3.2 使用try…with…resource 153

6.4 断言及程序的测试 154

6.4.1 使用assert 155

6.4.2 程序的测试及JUnit 155

习题 156

第7章 工具类及常用算法 157

7.1 Java语言基础类 157

7.1.1 JavaAPI 157

7.1.2 Object类 159

7.1.3 基本数据类型的包装类 162

7.1.4 Math类 163

7.1.5 System类 164

7.2 字符串和日期 165

7.2.1 String类 165

7.2.2 StringBuffer类 169

7.2.3 StringTokenizer类 170

7.2.4 日期相关类 171

7.3 集合类 173

7.3.1 集合与CollectionAPI 173

7.3.2 Set接口及HashSet、TreeSet类 174

7.3.3 List接口及ArrayList,Vector类 175

7.3.4 栈与队列 177

7.3.5 键-值集合及Map接口 179

7.4 泛型及集合遍历 181

7.4.1 泛型 181

7.4.2 装包与拆包 184

7.4.3 Iterator及Enumeration 184

7.4.4 集合与增强的for语句 186

7.5 排序与查找 188

7.5.1 使用Arrays类 188

7.5.2 使用Collections类 190

7.5.3 编写排序程序 193

7.6 遍试、迭代、递归及回溯 196

7.6.1 遍试 197

7.6.2 迭代 199

7.6.3 递归 201

7.6.4 回溯 206

习题 207

第8章 线程与并行编程 210

8.1 线程的创建与运行 210

8.1.1 Java中的线程 210

8.1.2 创建线程对象的两种方法 211

8.1.3 多线程 213

8.1.4 使用Timer类 215

8.1.5 应用举例 216

8.2 线程的控制与同步 220

8.2.1 线程的状态与生命周期 220

8.2.2 对线程的基本控制 221

8.2.3 synchronized关键字 226

8.2.4 线程间的同步控制 229

8.3 并行API 234

8.3.1 并行集合 234

8.3.2 原子变量 236

8.3.3 读写锁 237

8.3.4 Executor与Future 238

8.4 流式操作 240

8.4.1 使用流的基本方法 240

8.4.2 流及操作的种类 243

习题 245

第9章 流、文件及基于文本的应用 246

9.1 流式输入与输出 246

9.1.1 字节流与字符流 246

9.1.2 节点流和处理流 248

9.1.3 标准输入和标准输出 250

9.1.4 文本文件及二进制文件流应用示例 252

9.1.5 对象序列化 255

9.2 文件及目录 257

9.2.1 文件与目录管理 257

9.2.2 使用NIO2文件系统API 259

9.2.3 文件输入与输出流 261

9.2.4 RandomAccessFile类 263

9.3 基于文本的应用 265

9.3.1 Java Application命令行参数 265

9.3.2 环境参数 266

9.3.3 处理Deprecated的API 267

9.4 正则表达式 268

9.4.1 正则表达式的基本元素 268

9.4.2 Pattern及Matcher 269

9.5 XML处理 271

9.5.1 XML基本概念 271

9.5.2 XML编程 274

习题 279

第10章 图形用户界面 280

10.1 界面组件 280

10.1.1 图形用户界面概述 280

10.1.2 界面组件分类 281

10.1.3 Component的方法 283

10.2 布局管理 284

10.2.1 FlowLayout 284

10.2.2 BorderLayout 285

10.2.3 CardLayout 286

10.2.4 GridLayout 287

10.2.5 GridBagLayout 288

10.2.6 通过嵌套来设定复杂的布局 288

10.3 事件处理 289

10.3.1 事件及事件监听器 289

10.3.2 事件监听器的注册 291

10.3.3 事件适配器 294

10.3.4 内部类及匿名类在事件处理中的应用 295

10.4 常用组件的使用 297

10.4.1 标签、按钮与动作事件 298

10.4.2 文本框、文本区域与文本事件 299

10.4.3 单、复选按钮,列表与选择事件 300

10.4.4 调整事件与滚动条 304

10.4.5 鼠标、键盘事件与画布 306

10.4.6 Frame与窗口事件 307

10.4.7 Panel与容器事件 308

10.4.8 组件事件、焦点事件与对话框 310

10.5 绘图、图像和动画 311

10.5.1 绘制图形 311

10.5.2 显示文字 314

10.5.3 控制颜色 315

10.5.4 显示图像及实现动画 316

10.6 Applet 318

10.6.1 Applet的基本工作原理 318

10.6.2 Applet类 319

10.6.3 HTML文件参数传递 320

10.6.4 Applet的局限 321

10.7 Swing组件的使用 326

10.7.1 Swing的特点 326

10.7.2 几种Swing组件介绍 327

10.7.3 Swing组件与线程 329

10.8 基于GUI的应用程序 330

10.8.1 使用可视化设计工具 330

10.8.2 菜单的定义与使用 331

10.8.3 菜单、工具条及对话框的应用 334

习题 340

第11章 网络、多媒体和数据库编程 342

11.1 Java网络编程 342

11.1.1 使用URL 342

11.1.2 用Java实现底层网络通信 344

11.1.3 实现多线程服务器程序 346

11.1.4 Java的E-mail编程 353

11.1.5 使用第三方的库 358

11.2 多媒体编程 358

11.2.1 在Applet中获取声音与图像 358

11.2.2 Java图像编程 360

11.2.3 Java声音编程 362

11.2.4 JMF简介 362

11.3 Java数据库编程 363

11.3.1 Java访问数据库的基本步骤 363

11.3.2 使用JTable显示数据表 367

11.4 Java EE及Java ME简介 370

11.4.1 Java EE简介 371

11.4.2 Java ME简介 372

习题 374

附录A Java语言各版本增加的重要特性 375

参考文献 376