java和电脑编程_Java程序设计与计算思维 PDF 下载

资料目录:

前言

第1章 计算思维与Java设计初步体验 1

1.1 认识计算思维 2

1.1.1 计算思维的内容 3

1.1.2 分解 3

1.1.3 模式识别 5

1.1.4 模式概括与抽象 5

1.1.5 算法 6

1.2 进入程序设计的奇幻世界 8

1.2.1 程序设计语言的分类 8

1.2.2 程序设计的流程 10

1.2.3 程序编写的原则 10

1.3 程序设计逻辑的简介 12

1.3.1 结构化程序设计 12

1.3.2 面向对象程序设计 13

1.3.3 在面向对象程序设计中的其他关键术语 15

1.4 Java语言的特性 16

1.4.1 简单性 16

1.4.2 跨平台性 17

1.4.3 解释型 17

1.4.4 严谨性 18

1.4.5 例外处理 18

1.4.6 多线程 18

1.4.7 自动垃圾回收 18

1.4.8 泛型程序设计 19

1.5 Java的开发环境版本与架构 19

1.5.1 程序开发工具介绍 19

1.5.2 JDK的下载与安装 19

1.5.3 设置JDK搜索路径的环境变量 23

1.5.4 Java程序结构的解析 28

1.6 认识Java SE 11新增的功能 31

课后习题 33

第2章 认识数据处理与表达式 36

2.1 数据类型介绍 37

2.1.1 整数类型 37

2.1.2 浮点数类型 38

2.1.3 布尔类型 40

2.1.4 字符类型 41

2.2 变量与常数 42

2.2.1 变量与常数的声明 42

2.2.2 变量与常数的命名规则 43

2.3 基本输入与输出功能 46

2.3.1 在屏幕上输出数据 46

2.3.2 从键盘输入数据 47

2.4 数据类型的转换 49

2.4.1 由小变大模式 49

2.4.2 由大变小模式 49

2.5 表达式与运算符 50

2.5.1 算术运算符 51

2.5.2 关系运算符 53

2.5.3 逻辑运算符 55

2.5.4 移位运算符 57

2.5.5 赋值运算符 58

2.5.6 运算符的优先级 60

2.6 高级应用练习实例 62

2.6.1 多重逻辑运算符的应用 62

2.6.2 位逻辑运算符的运算练习 62

2.6.3 自动类型转换与强制类型转换的比较 63

课后习题 64

第3章 流程控制 67

3.1 认识流程控制 68

3.2 条件选择语句与条件运算符 70

3.2.1 if相关语句 70

3.2.2 if-else相关语句 72

3.2.3 if-else-if相关语句 74

3.2.4 嵌套if语句 76

3.2.5 switch条件选择语句 78

3.2.6 条件运算符 81

3.3 计数循环与条件循环 82

3.3.1 for循环 82

3.3.2 嵌套for循环 84

3.3.3 while循环 85

3.3.4 do-while循环 87

3.3.5 无限循环 88

3.4 控制跳转语句 88

3.4.1 break语句 88

3.4.2 continue语句 90

3.4.3 return语句 92

3.4.4 for-each的for循环 93

3.5 高级应用练习实例 96

3.5.1 使用条件选择语句进行考试成绩的评级 96

3.5.2 闰年的判断与应用 97

3.5.3 使用各种循环计算1~50的累加之和 98

课后习题 99

第4章 过程与函数 102

4.1 结构化与模块化的程序设计 102

4.2 声明并定义类方法 103

4.2.1 含参数行的类方法 104

4.2.2 含返回值的类方法 105

4.2.3 参数传递方式 106

4.3 类变量与变量的作用域 106

4.3.1 类变量 106

4.3.2 变量的作用域 107

4.4 高级应用练习实例 109

4.4.1 阶乘函数 109

4.4.2 斐波那契数列 111

4.4.3 汉诺塔问题 112

课后习题 115

第5章 数组结构 117

5.1 数组简介 118

5.1.1 声明数组的方法 119

5.1.2 指定数组元素的个数 121

5.1.3 数组的另一种声明方法 122

5.1.4 将指定值存入数组 122

5.2 多维数组 123

5.2.1 二维数组 124

5.2.2 三维数组 125

5.2.3 不规则数组 127

5.3 数组的应用与对象类 128

5.3.1 重新创建数组 128

5.3.2 复制数组的方式 129

5.3.3 对象数组 132

5.4 Arrays类 133

5.4.1 fill方法 134

5.4.2 equals 135

5.5 高级应用练习实例 136

5.5.1 矩阵的相加 136

5.5.2 冒泡排序法 137

5.5.3 彩票号码产生器 140

5.5.4 计算学生成绩分布并给出简易成绩分布示意图 141

5.5.5 Arrays类中方法的调用 143

5.5.6 多项式相加 144

5.5.7 插入排序法 146

课后习题 148

第6章 字符与字符串的声明与应用 151

6.1 字符的声明与使用 151

6.1.1 字符的表示法 152

6.1.2 Character类的方法 152

6.2 字符串类 153

6.2.1 创建字符串 153

6.2.2 以字符数组构建法来创建字符串 156

6.3 String类的方法 157

6.3.1 字符串的长度 158

6.3.2 字符串的查找 159

6.3.3 字符串替换 161

6.3.4 字符串的比较 162

6.3.5 字符串的转换 165

6.3.6 字符串的串接 166

6.3.7 提取字符串中的字符或子字符串 168

6.4 StringBuffer类 169

6.4.1 创建StringBuffer类的对象 170

6.4.2 调用StringBuffer类的方法 170

6.5 高级应用练习实例 176

6.5.1 利用字符串数据进行加法运算 176

6.5.2 调用endsWith()方法筛选出文件名 177

课后习题 178

第7章 面向对象程序设计的初探 180

7.1 面向对象的概念 180

7.1.1 消息 181

7.1.2 类 182

7.1.3 继承 183

7.2 封装与信息隐藏 183

7.3 类的命名规则和类的声明与定义 184

7.3.1 类的声明 185

7.3.2 类的成员变量 185

7.3.3 类的成员方法 186

7.3.4 类参数和自变量 187

7.4 类的构造函数 189

7.5 对象的创建与成员数据的使用 191

7.5.1 对象的创建 191

7.5.2 对象的赋值 192

7.5.3 对象的使用 192

7.5.4 修饰词与对象的搭配 194

7.6 对象的作用域与生命周期 196

7.6.1 对象的作用域 196

7.6.2 对象的生命周期 196

7.7 高级应用练习实例 197

7.7.1 计算圆面积的类 197

7.7.2 声明并定义Birthday类 198

7.7.3 二叉树的链表表示法 199

课后习题 202

第8章 继承与多态 204

8.1 认识继承关系 204

8.1.1 基类和派生类 205

8.1.2 单一继承 207

8.1.3 继承权限处理的原则 210

8.1.4 构造函数的调用顺序 215

8.1.5 类构造函数与继承关系 217

8.1.6 类成员的高级处理 218

8.2 多态 223

8.2.1 静态多态 223

8.2.2 动态多态 224

8.2.3 多态的实现 226

8.3 高级应用练习实例 228

8.3.1 编写计算图书销售金额的类 229

8.3.2 以继承方式声明并定义Baseball类 230

课后习题 231

第9章 抽象类、接口、程序包与嵌套类的作用 235

9.1 抽象类 235

9.1.1 抽象类的使用时机 236

9.1.2 声明、定义和使用抽象类 237

9.1.3 抽象类的实现——计算面积 239

9.1.4 使用抽象类存取子类 240

9.2 认识接口 242

9.2.1 接口的定义 242

9.2.2 声明、定义与使用自定义接口 243

9.2.3 使用接口变量创建对象 245

9.2.4 实现多重继承 246

9.2.5 声明子接口 248

9.3 大型程序的开发与应用——程序包的使用 249

9.3.1 程序分解的概念 249

9.3.2 程序包的需求 250

9.3.3 包装与导入程序包 250

9.3.4 导入程序包 252

9.4 类的嵌套结构 254

9.4.1 内部类与静态嵌套类 254

9.4.2 匿名类的介绍 256

9.5 高级应用练习实例 258

9.5.1 以抽象类来实现显示汽车数据的功能 259

9.5.2 用接口来实现多重继承 260

课后习题 261

第10章 Java常用类 265

10.1 Math类 265

10.1.1 Math类的常数 265

10.1.2 随机数的方法 266

10.1.3 数学类的方法 267

10.2 Number类 270

10.2.1 Number类简介 270

10.2.2 Number类的常用方法 271

10.2.3 字符串与数值转换 272

10.3 Vector类 274

10.3.1 Vector类简介 275

10.3.2 Vector类的常用方法 275

10.4 高级应用练习实例 277

10.4.1 彩票幸运号码产生器 277

10.4.2 在数组集合加入不同的数据类型 278

10.4.3 矩阵相乘 279

10.4.4 稀疏矩阵 281

课后习题 284

第11章 窗口环境与事件处理 286

11.1 初探AWT程序包 286

11.1.1 我的第一个窗口程序 287

11.1.2 Pack方法 293

11.2 版面布局 293

11.2.1 流式版面布局 293

11.2.2 边框版面布局 296

11.2.3 网格版面布局 298

11.3 事件处理的实现 300

11.3.1 事件类 301

11.3.2 事件来源与监听器接口 303

11.4 低级事件类 304

11.4.1 ComponentEvent类 305

11.4.2 InputEvent类 305

11.4.3 WindowEvent类 305

11.4.4 MouseEvent类 308

11.4.5 KeyEvent类 309

11.5 高级应用练习实例 311

课后习题 312

第12章 Swing程序包开发守则 314

12.1 Swing程序包的简介 314

12.1.1 Swing窗口的层级结构 316

12.1.2 Swing相关组件的说明 316

12.2 调整Swing组件外观 320

12.3 JButton(按钮)组件 324

12.4 JCheckBox(复选框)组件 329

12.5 JRadioButton(单选按钮)组件 332

12.6 JTextField(文本字段)与 JTextArea(文本框)组件 336

12.7 JList(列表框)组件 340

12.8 创建页签 344

12.9 高级应用练习实例 345

12.9.1 盒式版面布局法 345

12.9.2 重叠版面布局法 347

课后习题 349

第13章 绘图与多媒体功能开发 351

13.1 Java的基本绘图程序包 351

13.1.1 draw成员方法 353

13.1.2 画线 355

13.1.3 画矩形 356

13.1.4 画圆和画椭圆 358

13.1.5 窗口颜色 359

13.1.6 图像重新绘制功能 361

13.2 动画处理与声音播放 363

13.3 高级应用练习实例 366

课后习题 368

第14章 例外处理 370

14.1 什么是例外处理 370

14.1.1 Error类 371

14.1.2 Exception类 372

14.2 认识例外处理 373

14.2.1 例外处理的语法说明 373

14.2.2 finally的使用 375

14.2.3 例外处理的执行流程 376

14.3 抛出例外功能 376

14.3.1 使用throw抛出例外 376

14.3.2 使用throws抛出例外事件 378

14.4 调用方法处理例外 379

14.5 调用类处理例外 381

14.6 例外结构的介绍 382

14.6.1 多个catch程序区块 382

14.6.2 getMessage( ) 383

14.7 自定义例外处理的类 385

14.8 高级应用练习实例 386

课后习题 387

第15章 数据流与文件管理 389

15.1 Java的基本输入输出控制 389

15.1.1 标准输出数据流 390

15.1.2 标准输入数据流 392

15.1.3 java.io程序包 394

15.2 字符数据流 394

15.2.1 抽象基类——Reader与Writer 395

15.2.2 常用的字符数据流类 397

15.3 字节数据流 402

15.3.1 InputStream类与OutputStream类 403

15.3.2 输入数据流类(InputStream) 404

15.3.3 输出数据流类(OutputStream) 406

15.3.4 其他字节数据流类 409

15.4 文件数据流 413

15.4.1 File类 413

15.4.2 文件名过滤接口 418

15.4.3 文件IO数据流 419

15.5 关于缓冲区 422

15.5.1 字节数据流使用缓冲区 422

15.5.2 字符数据流使用缓冲区 425

15.6 高级应用练习实例 427

15.6.1 文件输入数据流——FileInputStream 428

15.6.2 文件输出数据流——FileOutputStream 428

课后习题 430

第16章 泛型与集合对象 432

16.1 泛型的基础概念 432

16.2 集合对象 435

16.2.1 Iterable接口 435

16.2.2 Collection接口 436

16.3 List接口 436

16.3.1 LinkedList类 437

16.3.2 ArrayList类 439

16.4 Set接口 441

16.4.1 HashSet类 442

16.4.2 SortedSet接口 443

16.4.3 TreeSet类 444

16.5 Map接口与SortedMap接口 445

16.5.1 HashMap类 446

16.5.2 TreeMap类 446

16.6 Lambda表达式 448

课后习题 450

第17章 深度剖析多线程 452

17.1 线程的概念 452

17.1.1 顺序执行 453

17.1.2 多任务处理 454

17.2 Java的多任务处理 455

17.2.1 Timer类与TimerTask类 455

17.2.2 多线程机制——Thread类 460

17.2.3 多线程机制——Runnable接口 464

17.3 管理线程 466

17.3.1 线程的生命周期 466

17.3.2 管理线程的方法 467

17.4 多线程高级处理 472

17.4.1 线程分组 472

17.4.2 数据同步操作的问题 474

17.5 高级应用练习实例 479

课后习题 481

第18章 精通网络程序设计 483

18.1 认识网络应用程序 483

18.1.1 网络的基本概念 484

18.1.2 网络应用程序的必备程序包 484

18.1.3 IP地址简介 485

18.2 InetAddress类 485

18.2.1 InetAddress类中的静态方法 487

18.2.2 InetAddress类中的非静态方法 488

18.3 用Socket来建立通信 489

18.3.1 Java的Socket接口 490

18.3.2 Socket应用程序 490

18.3.3 服务器端与Socket 491

18.3.4 客户端与Socket 495

18.4 UDP通信 497

18.4.1 DatagramSocket类 497

18.4.2 DatagramPacket类 498

18.5 URL类 502

18.6 高级应用练习实例 506

18.6.1 查询网络域名所属的IP地址 506

18.6.2 使用URL读取文件内容 507

课后习题 508

附录 课后习题参考答案 510

你可能感兴趣的:(java和电脑编程)