《Java程序设计 从方法学角度描述》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:化志章编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2011
  • ISBN:9787111340874
  • 页数:247 页
图书介绍:本书是从方法学角度阐述Java语言的第一本教材,旨在让学生既要“知其然”,更要“知其所以然”。方法学思想不仅可以引导学习过程,更能培养一种良好的学习方式。借助方法学这一视角,用一种更符合自然逻辑的方式引导知识地学习,对所学知识快速建立起逻辑合理的脉络框架。由大入小,由小入微。让学生不仅“知其然”,更要“知其所以然”。纷杂的语法、规则仅仅是上述方法学思想的逻辑诠释。本书内容大致可分成三部分:第一部分(1~3章)介绍程序设计语言的基本要素和开发方法;第二部分(4~5章)介绍Java语言如何支持面向对象;第三部分(6~11章)阐述Java的特色机制,包括:多线程、异常处理和断言、GUI编程基础和Applet、I/O流、网络通信、泛型机制等。本书可作为计算机专业及相关专业本科生的教学用书,和研究生的参考用书,也可供软件工程师及读者自学参考。由于本书蕴含了对计算机知识的学习和思考的独特方法,因此对希望学习了解软件开发的各类人员也有一定的参考价值。

第1章 程序设计语言概述 1

1.0本章方法学导引 1

1.1程序的含义和程序设计策略 2

1.1.1程序的含义 2

1.1.2程序设计的通用策略 2

1.2程序设计语言的重要属性 4

1.2.1语言的设计范型 4

1.2.2类型系统 5

1.2.3编译型语言和解释型语言 6

1.3 Java语言概述 7

1.3.1 Java语言的诞生和发展 7

1.3.2 Java语言的特点 8

1.3.3 Java编程环境 10

1.3.4 Java程序的运行原理 12

思考与练习 14

第2章 程序设计语言的基本成分 15

2.0本章方法学导引 15

2.1程序设计语言基本成分概述 16

2.2字符集 17

2.3词法元素 17

2.3.1标识符和关键字 17

2.3.2运算符、分隔符和限界符 18

2.3.3字面量 19

2.3.4注释 19

2.4数据类型 19

2.4.1什么是数据类型 19

2.4.2数据类型的实例 21

2.4.3 Java类型系统概述 22

2.4.4 Java的基本数据类型 22

2.4.5 Java的引用数据类型 25

2.4.6数组 27

2.4.7字符串 29

2.5表达式 31

2.5.1表达式的含义 31

2.5.2表达式计算过程中的类型转换 32

2.5.3表达式的运算顺序 33

2.6 语句 34

2.6.1语句概述 34

2.6.2说明语句 34

2.6.3赋值语句 35

2.6.4输入和输出语句 35

2.6.5控制语句 37

2.6.6标签和转向语句 45

2.7子程序 46

2.7.1子程序概述 46

2.7.2子程序的参数传递 47

2.7.3 Java的应用程序结构 49

思考与练习 49

第3章 程序设计方法概述 52

3.0本章方法学导引 52

3.1问题规模对程序设计方法的影响 53

3.2结构化程序设计方法 54

3.2.1方法起源 54

3.2.2核心思想 54

3.2.3实例剖析 55

3.2.4结构化程序设计方法的优缺点 56

3.3面向对象程序设计方法 56

3.3.1方法起源 56

3.3.2核心思想 57

3.3.3基本概念 58

3.3.4实例剖析 60

3.4两种方法的简单评述 61

思考与练习 62

第4章 面向对象语言基础 64

4.0本章方法学导引 64

4.1区分类、对象和对象的引用 65

4.1.1一个简单的例子 65

4.1.2对象和对象引用的内存管理 66

4.1.3对象及其引用的创建和初始化 69

4.1.4对象的销毁 70

4.2对象的使用 71

4.2.1对象的引用 71

4.2.2赋值 72

4.2.3相等判断 72

4.2.4对象数组 73

4.2.5从存储管理角度解释参数传递 74

4.2.6成员变量和局部变量 75

4.3类的继承 76

4.3.1继承的语法 76

4.3.2 is-A与has-A关系 77

4.3.3构造函数的调用顺序 77

4.3.4 super和this 78

4.4类及其成员的修饰 80

4.4.1访问权限修饰 80

4.4.2 final修饰 81

4.4.3 static修饰 82

4.5对象的多态 84

4.5.1多态的含义 84

4.5.2重载 85

4.5.3重写 86

4.5.4重定义 89

4.5.5 instanceof与多态性 90

4.6抽象类和接口 91

4.6.1抽象类和接口的引入背景 91

4.6.2抽象方法和抽象类 91

4.6.3接口 93

4.7类中的特殊成员 97

4.7.1内嵌类型 97

4.7.2初始化块 100

4.7.3本地方法 101

思考与练习 101

第5章 类的管理以及常用工具类 104

5.0本章方法学导引 104

5.1包 105

5.1.1包的声明和导入 105

5.1.2访问权限 107

5.2包装器类和自动装箱/拆箱 108

5.2.1包装器类的引入背景 108

5.2.2包装器类的构造函数 109

5.2.3包装器类的常用方法 109

5.2.4自动装箱和自动拆箱 110

5.3枚举 111

5.4数组的高级应用 112

5.4.1紧凑型for循环结构 112

5.4.2复制数组 112

5.4.3 Arrays工具类 113

5.5字符串的高级应用 114

5.5.1 StringBuffer和StringBuilder 114

5.5.2正则表达式 114

5.5.3 String的高级应用 116

思考与练习 118

第6章 异常处理和断言 120

6.0本章方法学导引 120

6.1异常机制概述 121

6.1.1异常难以避免 121

6.1.2传统的异常处理手段 121

6.1.3 Java的异常处理策略 122

6.1.4 Java异常的分类 122

6.2异常处理机制 123

6.2.1异常的捕获和处理 123

6.2.2异常的声明 125

6.3对异常机制的补充 126

6.3.1虚拟机异常和程序性异常 126

6.3.2异常的传播 126

6.3.3对重写方法的补充说明 127

6.4自定义异常类 128

6.5断言 129

思考与练习 130

第7章 线程 131

7.0本章方法学导引 131

7.1线程机制概述 132

7.1.1并发程序的引入背景 132

7.1.2程序、进程与线程 132

7.1.3 Java线程机制概述 133

7.1.4 Java的线程状态和生命周期 135

7.2线程的构造和运行 136

7.2.1用Thread类构造线程对象 136

7.2.2用Runnable辅助构造线程 138

7.3线程的互斥机制 139

7.3.1为何需要引入互斥机制 139

7.3.2怎样实现互斥 140

7.3.3 synchronized标记 141

7.3.4关于互斥的进一步讨论 142

7.4线程的同步机制 144

7.4.1线程的异步与同步 144

7.4.2如何实现同步 144

7.4.3 Java的同步机制实现 145

7.5线程调度 147

7.5.1线程的优先级和调度策略 148

7.5.2线程调度常用方法 149

思考与练习 150

第8章GUI编程基础和Applet 152

8.0本章方法学导引 152

8.1 GUI编程概述 153

8.1.1字符用户界面和图形用户界面 153

8.1.2图形用户界面的基本元素 153

8.1.3 awt和swing 154

8.1.4 GUI编程涉及的基本环节 155

8.2一个简单界面的设计 155

8.2.1常用组件介绍 155

8.2.2一个简单GUI界面的设计实例 156

8.3委托事件处理模型 157

8.3.1模型的方法学思想 157

8.3.2模型的构成要素和应用步骤 158

8.3.3两个简单的事件处理实例 159

8.3.4适配器类 162

8.4布局管理 163

8.4.1布局管理概述 163

8.4.2 Flow布局 164

8.4.3 GridLayout布局 165

8.4.4 BorderLayout布局 165

8.5一个综合案例 166

8.6 Applet应用程序 169

8.6.1什么是Applet 169

8.6.2 URL和HTML 169

8.6.3一个简单的Applet 170

8.6.4 Applet生命周期和主要方法 171

8.6.5 Applet综合应用示例 173

8.6.6 Applet的安全限制 174

8.7绘图基础 174

8.7.1概述 174

8.7.2绘图机制 175

8.7.3若干示例 175

思考与练习 178

第9章I/O流 180

9.0本章方法学导引 180

9.1 I/O流概述 181

9.1.1 I/O流的引入背景 181

9.1.2 I/O流的总体设计 182

9.1.3 I/O流的基本应用框架 183

9.2应用1:文件读/写 183

9.2.1相关类简介 183

9.2.2逐个字符读/写文件 184

9.2.3按字符流整体读/写文件 185

9.2.4基于缓冲区读/写文件 186

9.2.5一个简单的文本文件编辑器 186

9.3应用2:基本类型数据的读/写 189

9.3.1系统类和标准流 190

9.3.2从标准输入流读取数据 190

9.3.3数值型数据的读/写 191

9.3.4标准I/O重定向 193

9.4应用3:对象的序列化 193

9.4.1对象序列化的产生背景 193

9.4.2对象序列化的实现 194

9.4.3自定义序列化/反系列化过程 197

思考与练习 198

第10章 网络通信 200

10.0本章方法学导引 200

10.1基础知识 201

10.1.1计算机网络和Java语言 201

10.1.2网络中的相关标识 201

10.1.3网络协议 202

10.2以URL方式访问网络资源 204

10.2.1相关类简介 204

10.2.2 URL访问网络资源的基本步骤 205

10.2.3三个例子 205

10.3基于流的端对端通信方式 208

10.3.1相关类简介 208

10.3.2实施通信的基本步骤 208

10.3.3两个例子 209

10.4基于数据报的端对端通信方式 213

10.4.1相关类简介 213

10.4.2实施通信的基本步骤 213

10.4.3一个例子 214

思考与练习 215

第11章 泛型与集合框架 216

11.0本章方法学导引 216

11.1泛型含义及引入背景 217

11.2 Java泛型声明 218

11.2.1泛型的简单声明和具体化 218

11.2.2泛型参数的应用场合 219

11.2.3给泛型参数加上约束 220

11.2.4泛型参数的通配符 223

11.3 Java泛型实现机理及注意事项 226

11.3.1 Java泛型实现机理:擦拭 226

11.3.2 Java泛型机制的相关约束 228

11.4泛型综合应用示例 230

11.4.1一个简单的泛型容器 231

11.4.2泛型迭代器 232

11.5泛型综合应用:集合框架 235

11.5.1集合框架引入背景 235

11.5.2集合框架的基础结构 236

11.5.3 List结构应用示例 237

11.5.4 Set结构应用示例 239

11.5.5 Map结构应用示例 241

思考与练习 243

参考文献 245