当前位置:首页 > 工业技术
面向对象Java语言程序设计 图形化方法

面向对象Java语言程序设计 图形化方法PDF格式文档图书下载

工业技术

图书介绍:本书介绍JAVA面向对象程序设计。

查看更多关于面向对象Java语言程序设计 图形化方法的内容

图书介绍

第0章 背景知识 1

0.1 简介 1

0.2 计算机硬件 1

0.3 计算机软件 3

0.4 编程语言和Java 3

0.5 执行程序 5

0.6 编程的软件工具 5

0.7 Java中的编译器如何工作 6

0.8 编写程序的过程 7

0.9 程序不工作怎么办 9

练习题 10

自我检测题 10

小结 10

第1章 对象 13

1.1 简介 13

1.2 概念 14

1.2.1 什么是模型 14

1.2.2 如何构建模型 15

1.2.3 如何拥有相同类型的不同对象:类和实例 16

1.2.4 管理复杂性 17

1.2.5 是什么造就一个好的软件模型 18

1.3 方法 19

1.3.1 橡皮图章:声明和定义一个类 20

1.3.2 对属性建模:实例变量 21

1.3.3 对能力建模Ⅰ:构造方法 23

1.3.4 为属性赋值:赋值语句 24

1.3.5 对能力建模Ⅱ:更多有关方法的知识 25

1.3.6 UML图 27

1.4 学以致用:对象——学习Java的起点 28

1.4.1 起步 29

1.4.2 背景:图形库Wheels 29

1.4.3 分析 31

1.4.4 设计 31

1.4.5 实现 31

1.4.8 继续 32

1.4.7 测试 32

1.4.6 执行的步骤 32

小结 33

自我检测题 33

练习题 34

编程项目 37

最新风格惯例 37

第2章 带有参数的方法 39

2.1 简介 39

2.2 概念 40

2.2.1 参数 40

2.2.2 返回值 41

2.3.1 参数 42

2.3 方法 42

2.3.2 带有参数的构造方法 43

2.3.3 方法调用的调试技巧 45

2.3.4 参数、局部变量和实例变量 45

2.3.5 返回类型 48

2.3.6 方法签名和重载 49

2.4 学以致用:对象——会说话的太阳 49

2.4.1 背景:关于Wheels的更多知识 50

2.4.2 分析 51

2.4.4 实现:版本1 52

2.4.5 导入、包和库 52

2.4.3 设计 52

2.4.6 版本2:添加构造方法体 53

2.4.7 Java的内建颜色 54

2.4.8 测试版本2 54

2.4.9 把图形放到Frame中的不同位置 54

2.4.10 实现:版本3 55

2.4.11 测试版本3 56

2.5 学以致用:复合对象——雪人 56

2.5.1 分析 56

2.5.2 设计 57

2.5.3 实现:复用SunCartoon 58

2.5.4 测试:程序的第一段 58

2.5.5 实现:Hat 58

2.5.6 测试Hat:部分1 59

2.5.7 设置复合对象的位置:Hat 60

2.5.8 测试Hat(续) 61

2.5.9 组装起来:实现Snowman 62

2.5.10 测试Snowman:部分1 62

2.5.11 实现Snowman(续) 62

2.5.12 测试Snowman(续) 63

小结 63

自我检测题 64

练习题 64

编程项目 66

最新风格惯例 68

3.1 简介 69

第3章 继承 69

3.2 概念 70

3.3 方法 71

3.3.1 简单继承 71

3.3.2 覆盖继承的方法 73

3.3.3 实现abstract方法 74

3.3.4 继承属性:伪继承 76

3.3.5 方法解析 78

3.4 学以致用:继承——Blobs 79

3.4.1 背景:Wheels中的鼠标方法 80

3.4.2 分析 80

3.4.3 设计 81

3.4.4 实现:带有一个Blob的BlobApp 82

3.4.6 实现:带有一个WinkingBlob的BlobApp 83

3.4.5 测试(部分1) 83

3.4.7 测试(部分2) 84

3.4.8 实现:带有WinkingBlob和TalkativeBlob的BlobApp 84

3.4.9 最终测试 85

小结 85

自我检测题 85

练习题 86

编程项目 88

4.1 简介 91

4.2 概念 91

第4章 接口 91

4.3 方法 92

4.3.1 定义和实现接口 92

4.3.2 实现多个接口的类 93

4.3.3 扩展接口 95

4.3.4 设计选择:接口VS.abstract类 96

4.3.5 设计选择:使用多少个接口 97

4.3.6 设计选择:哪个能力放入到哪个接口中 97

4.4 学以致用:接口——一个会动的太阳 97

4.4.1 编写一个接口 98

4.4.2 编写一个实现了接口的类 99

4.4.3 实现mouseDragged方法 99

4.4.4 实现Frame:MovableSunApp 100

4.5 学以致用:接口和复合图形——一顶可移动的帽子 101

4.5.1 起步:接口和MovableHatApp 102

4.5.2 创建知道其包含者的一个部分:HatPart类 102

4.5.3 创建一个像单元一样移动的复合对象:Hat类 103

4.6 秘诀 104

4.6.1 定义类 105

4.6.2 初始化实例变量 106

4.6.3 带有默认值的实例变量 106

4.6.4 accessor和mutator 107

4.6.5 知道包含者的部分 108

小结 108

练习题 109

自我检测题 109

编程项目 110

第5章 多态 111

5.1 简介 111

5.2 概念 112

5.3 方法 114

5.3.1 继承多态 114

5.3.2 接口多态 115

5.3.3 确定调用哪个方法 116

5.4 学以致用:多态——画板 117

5.4.1 分析 118

5.4.2 设计 118

5.4.3 实现 119

5.4.4 测试 122

小结 123

自我检测题 123

练习题 124

编程项目 127

第6章 算术表达式和条件语句 129

6.1 简介 129

6.2 概念 129

6.2.1 表示数字 130

6.2.2 算术运算符 130

6.2.3 条件语句和布尔逻辑 131

6.2.5 对象相等 133

6.2.4 关系运算符 133

6.2.6 从一个yes-no选择中选取 134

6.2.7 从两种选择中选取 134

6.2.8 从多种选择中选取 134

6.2.9 何时使用条件语句 135

6.3 方法 136

6.3.1 Java中的数字 136

6.3.2 算术运算符 137

6.3.3 自增运算和自减运算 138

6.3.4 布尔运算符 139

6.3.5 关系运算符 139

6.3.6 单个选择 140

6.4 学以致用:算术表达式和条件语句——雏菊,雏菊,告诉我答案 141

小结 145

自我检测题 145

练习题 146

编程项目 148

第7章 二维图形 149

7.1 简介 149

7.2 概念 150

7.3 学以致用:窗口和图形——修改后的FirstApp 150

7.3.1 JFrame 151

7.3.2 JPanel 152

7.3.3 布局 153

7.3.4 把一个椭圆形放入到JPanel 154

7.3.5 创建一个“聪明的”椭圆形 154

7.3.6 绘制图形和Graphics对象 156

7.4 学以致用:事件和动画——弹跳的球 158

7.4.1 Java事件模型 159

7.4.2 使用事件:让球开始弹跳 163

7.4.3 旋转图形 166

7.5 学以致用:事件和复合图形——鱼缸 166

7.6 学以致用:设计——构建自己的Wheels 173

7.6.1 Java的内建图形类 173

7.6.2 新的ColorShape类 174

练习题 178

自我检测题 178

小结 178

编程项目 179

第8章 图形用户界面和事件处理 183

8.1 简介 183

8.2 概念 184

8.2.1 设计原则 184

8.2.2 设计工具 187

8.3 方法 188

8.3.1 在屏幕上排列组件:布局 189

8.3.2 组件 192

8.3.3 让程序能够响应输入:事件处理和SmartComponent 195

8.4 学以致用:GUI——一个用户控制的弹跳球 200

8.4.1 部分1:布局 201

8.4.2 ControlPanel 202

8.4.3 QuitButton 203

8.4.4 添加带有BouncingBall的BallPanel,添加颜色按钮并使它们工作 204

8.4.5 添加滑块 207

小结 209

自我检测题 210

练习题 210

编程项目 212

第9章 设计模式 215

9.1 简介 215

9.2 概念 216

9.3 方法 217

9.4 学以致用:Holder模式——绘图程序的一部分 217

9.4.1 对当前颜色建模:Holder模式 218

9.4.2 ColorHolderApp 219

9.4.3 ControlPanel类和按钮类 220

9.4.4 ColorShapePanel 221

9.5 学以致用:代理模式——赛车 222

9.6 学以致用:复合模式——太空外星人 233

小结 236

自我检测题 236

编程项目 237

练习题 237

第10章 高级算术表达式和条件语句 239

10.1 简介 239

10.2 概念 239

10.2.1 对实数建模 239

10.2.2 浮点数的运算 240

10.2.3 强制类型转换 240

10.2.4 对多重选择建模 240

10.3 方法 241

10.3.1 Java中的浮点数 241

10.3.2 浮点数的算术运算和强制类型转换 243

10.3.3 Java的Math类:static变量和方法 245

10.3.4 随机数 245

10.3.5 常量:如何、何处以及何时定义它们 246

10.3.6 对多重选择建模:嵌套条件语句 249

10.3.7 短路 250

10.3.8 switch语句 251

10.4 学以致用:浮点数、嵌套条件语句和随机数——ColorBounceApp 253

小结 257

自我检测题 257

练习题 258

编程项目 259

最新编程惯例 259

第11章 循环 261

11.1 简介 261

11.3.1 Vector 262

11.2 概念 262

11.3 方法 262

11.3.2 无限循环:while循环 265

11.3.3 Iterator 267

11.3.4 无限循环:do-while循环 268

11.3.5 有限循环:for循环 268

11.3.6 循环中的break和continue 270

11.3.7 在循环中选择 271

11.3.8 编写循环的秘诀 271

11.3.9 调试循环 273

11.3.10 控制流程 275

11.4 学以致用:循环——ButterflyApp 276

小结 280

自我检测题 281

练习题 281

编程项目 283

第12章 递归 285

12.1 简介 285

12.2 概念 286

12.3 方法 286

12.3.1 带有一个递归调用的例子:阶乘 287

12.3.2 带有多个递归调用的例子:汉诺塔 289

12.3.3 调试技巧 290

12.3.4 在迭代和递归之间选择 291

12.4 学以致用:递归——SpiralApp 293

12.5 学以致用:递归——TreeApp 297

小结 300

自我检测题 300

练习题 300

编程项目 301

第13章 数组、Vector和ArrayList 303

13.1 简介 303

13.2 概念 303

13.3 方法 304

13.3.1 声明和初始化数组、ArrayList和Vector 304

13.3.2 访问和使用元素 305

13.3.4 多维结构 306

13.3.3 作为参数传递 306

13.3.5 调试技巧:常见的数组错误 308

13.3.6 比较数组、Vector和ArrayList 308

13.3.7 主线程揭秘 309

13.4 学以致用:数组——ClickApp 310

小结 313

自我检测题 313

练习题 314

编程项目 315

第14章 数据结构 317

14.1 简介 317

14.2.1 堆栈 318

14.2 概念 318

14.2.2 队列 319

14.2.3 链表 320

14.2.4 字典 320

14.2.5 使用链表实现ADT 321

14.2.6 实例图 321

14.3 方法 323

14.3.1 Node类 323

14.3.2 StackADT接口 324

14.3.3 Stack类 324

14.3.4 QueueADT接口 326

14.3.5 Queue类 326

14.3.7 实现List和迭代器设计模式 328

14.3.6 ListADT接口 328

14.3.8 DictionaryADT接口 329

14.3.9 Dictionary类 332

14.4 学以致用:数据结构——测试程序 337

小结 339

自我检测题 339

练习题 340

编程项目 341

第15章 树 343

15.1 简介 343

15.2.1 使用树建模 344

15.2 概念 344

15.2.2 使用树高效实现字典操作 345

15.2.3 中序、先序和后序 348

15.3 方法:二叉查找树 350

15.4 学以致用:Tree——测试程序 357

小结 357

自我检测题 358

练习题 358

编程项目 358

第16章 排序和查找 359

16.1 简介 359

16.2 概念 360

16.2.2 冒泡排序 362

16.2.1 排序 362

16.2.3 插入排序 365

16.2.4 选择排序 367

16.2.5 合并排序 367

16.2.6 递推关系 369

16.2.7 查找:概述 371

16.2.8 查找:数组 371

16.2.9 查找:链表 372

16.2.10 查找:二叉树 372

16.2.11 查找:n叉树和混合树 373

16.2.12 查找:哈希表 374

自我检测题 376

小结 376

练习题 377

编程项目 378

第17章 字符串和文本I/O 379

17.1 简介 379

17.2 概念 379

17.3 方法:String 380

17.3.1 组合String 381

17.3.2 提取String的一部分 381

17.3.3 比较String 382

17.3.4 反转String 383

17.4 学以致用:String——GUI文本I/O 384

17.3.5 String类概览 384

17.4.1 简单文本I/O程序的一个模板GUI 385

17.4.2 一个简单应用程序:EchoApp 388

17.4.3 另一个应用程序:StringMethodsApp 389

17.4.4 第三个应用程序:EqualTestApp 390

小结 392

自我检测题 392

练习题 392

编程项目 393

第18章 命令行I/O、文件I/O和异常 395

18.1 简介 395

18.2.1 命令行I/O 396

18.2 概念 396

18.2.2 文件I/O 398

18.2.3 把对象存储到文件中并从文件中将它们读回 399

18.2.4 异常 399

18.3 方法 400

18.3.1 命令行I/O 400

18.3.2 异常 406

18.3.3 文件I/O 410

18.4 学以致用:文件I/O——保存和恢复对象 412

小结 416

自我检测题 416

练习题 416

编程项目 417

查看更多关于面向对象Java语言程序设计 图形化方法的内容

相关书籍
作者其它书籍
返回顶部