《Java程序设计与项目实战 全程实录》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:张峰编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302262763
  • 页数:459 页
图书介绍:本书从初学者学习Java编程的角度出发,向读者讲述了Java开发环境的搭建、Java基础语法知识、Java算法流程等。

第1篇Java基础把脉篇 2

第1章Java应用运行及开发环境的搭建 2

1.1 Windows下Java开发环境的配置 2

1.1.1相关软件介绍 2

1.1.2应用平台 3

1.1.3解析JDK结构 4

1.2 Eclipse的安装和使用 5

1.2.1 Eclipse的下载和安装 5

1.2.2 MyEclipse的下载和安装 5

1.2.3 UI界面插件的下载与安装 5

1.3 JBuilder集成开发环境介绍 8

1.4 NetBeans集成开发环境介绍 9

1.5本章小结 9

第2章初识Java语言 10

2.1 Java语言简介 10

2.1.1 Java的现状 10

2.1.2 Java语言的应用前景 1

2.1.3 Java编程语言的主要目标 11

2.1.4 Java虚拟机 12

2.1.5垃圾收集 12

2.2编写Java应用程序 12

2.2.1 FirstHelloWorldAppjava 12

2.2.2解析FirstHelloWorldApp.java 13

2.2.3编译并运行FirstHelloWorldApp 13

2.2.4向包中添加类 14

2.2.5包的引用 16

2.2.6目录布局及CLASSPATH环境变量 16

2.2.7编译查错 17

2.2.8应用集成开发环境编写程序 18

2.3 Java与C/C++、 C#的比较 23

2.3.1全局变量 23

2.3.2 goto 24

2.3.3指针 24

2.3.4内存管理 25

2.3.5数据类型的支持 26

2.3.6类型转换 26

2.3.7头文件 26

2.3.8结构和联合 27

2.3.9预处理 27

2.4本章考试、面试问题分析 27

2.5实验1 Java运行环境的安装、配置与运行 28

2.6问题集锦与解答 31

2.7自我检测 32

2.8本章小结 32

第3章Java标识符、关键字和类型 33

3.1 Java基本语法 33

3.1.1注释 33

3.1.2分号、块和空白 33

3.1.3标识符 34

3.1.4 Java关键字 34

3.1.5 Java编码约定 36

3.2数据类型 36

3.2.1简单数据类型 37

3.2.2复合数据类型 37

3.2.3常量与变量 38

3.2.4整型数据 38

3.2.5浮点型(实型)数据 39

3.2.6字符型数据 40

3.2.7布尔型数据 41

3.2.8各类数值型数据间的混合运算 41

3.2.9枚举类型 43

3.3本章考试、面试问题分析 44

3.4实验2 Java标识符、关键字和类型练习 45

3.5问题集锦与解答 46

3.6自我检测 46

3.7本章小结 47

第4章表达式和流控制 48

4.1表达式 48

4.1.1变量和作用域 48

4.1.2变量初始化 49

4.1.3运算符 50

4.1.4算术运算符 51

4.1.5关系运算符 52

4.1.6布尔逻辑运算符 52

4.1.7位运算符 53

4.2流控制 54

4.2.1分支语句 54

4.2.2循环语句 57

4.3本章考试、面试问题分析 61

4.4实验3 Java表达式和流控制练习 61

4.5自我检测 63

4.6本章小结 65

第5章数组和字符串 66

5.1一维数组 66

5.1.1一维数组的定义 66

5.1.2一维数组元素的引用 67

5.1.3一维数组的初始化 68

5.1.4一维数组在实际编程中的应用方法 68

5.2多维数组 69

5.2.1二维数组的定义 69

5.2.2二维数组元素的引用 69

5.2.3二维数组的初始化 69

5.2.4二维数组在实际编程中的应用 69

5.2.5拷贝数组 71

5.3字符串 71

5.3.1创建String类对象 71

5.3.2 String类的操作方法 72

5.4本章考试、面试问题分析 75

5.5实验4数组和字符串 76

5.6问题集锦与解答 77

5.7自我检测 78

5.8本章小结 79

第6章对象、类、包和接口 80

6.1对象基础 80

6.1.1面向对象的基本概念 80

6.1.2抽象 81

6.1.3封装 81

6.1.4对象 81

6.1.5对象、类和消息 81

6.1.6继承 83

6.1.7多态 83

6.1.8模板/泛型(template/generic ) 83

6.2类 84

6.2.1类的组成 84

6.2.2显式成员初始化 86

6.2.3重载方法名称 87

6.2.4默认构造方法 87

6.2.5调用重载构造方法 87

6.3对象 88

6.3.1对象生成 88

6.3.2对象的使用 89

6.3.3构造函数的特点 90

6.4继承 91

6.4.1继承的概念 91

6.4.2继承定义 91

6.4.3扩展类 92

6.4.4属性继承与隐藏 94

6.4.5方法继承、覆盖与重载 94

6.4.6在子类中使用构造方法 95

6.5多态与动态绑定 96

6.5.1多态 96

6.5.2动态绑定 96

6.5.3父类对象与子类对象的使用与转化 97

6.5.4 Instanceof运算符 97

6.5.5多态性在实际编程中的应用 98

6.5.6泛型 99

6.5.7构造方法的继承与重载 101

6.5.8参数可变的方法 103

6.6抽象类与抽象方法 104

6.6.1抽象类 104

6.6.2抽象方法 105

6.6.3访问控制符 106

6.7包 106

6.7.1包的作用 106

6.7.2包的创建 107

6.7.3包的引用 107

6.7.4向包中添加类 107

6.7.5包的作用域 108

6.7.6静态引用 108

6.8接口 109

6.8.1接口概念 109

6.8.2接口声明 110

6.8.3接口的实现 110

6.9静态变量 113

6.9.1类(static)变量 113

6.9.2类(static)方法 113

6.10关键字final 114

6.10.1 final类 114

6.10.2 final方法 114

6.10.3 final变量 114

6.11内部类 114

6.11.1内部类定义 114

6.11.2内部类属性 116

6.12包装类 116

6.13反射API 117

6.13.1反射API特征 117

6.13.2反射机制应用实例 117

6.14本章考试、面试问题分析 118

6.15实验5面向对象编程练习 121

6.16问题集锦与解答 124

6.17自我检测 124

6.18本章小结 125

第2篇Java标准类包把脉篇 127

第7章高级语言特征 127

7.1常用工具集介绍 127

7.1.1 Java语言的util类 127

7.1.2 Collection接口 127

7.1.3 Collection的功能方法 128

7.1.4 List接口 128

7.1.5 LinkedList类 129

7.1.6 ArrayList类 131

7.1.7 Vector类 132

7.1.8 Stack类 132

7.1.9 Set接口 133

7.1.10 Map接口 135

7.1.11 Hashtable类 136

7.1.12 HashMap类 137

7.1.13 WeakHashMap类 138

7.2日期操作 138

7.2.1 Date类 139

7.2.2 Calendar类 139

7.2.3 SimpleDateFormat类 140

7.3 Arrays类 141

7.3.1数组排序 141

7.3.2数组填充 142

7.3.3数组比较 142

7.3.4数组复制 143

7.4 java.lang.Math类和java.math包 144

7.4.1 java.lang.Math类 144

7.4.2 java.math包 144

7.5 Java Annotation 145

7.5.1 Java注释 145

7.5.2@ Override注释 145

7.5.3@ Deprecated注释 146

7.5.4@ SuppressWarnings注释 146

7.5.5自定义注释 147

7.6本章考试、面试问题分析 147

7.7实验6集合类的使用 149

7.8自我检测 151

7.9本章小结 151

第8章异常 152

8.1异常处理 152

8.1.1异常的类型 153

8.1.2不捕捉异常 153

8.1.3 try与catch 153

8.1.4多个catch子句 154

8.1.5 try语句的嵌套 154

8.1.6 throw语句 155

8.1.7 throws语句 156

8.1.8 finally 157

8.2异常分类 158

8.3自定义异常 159

8.4本章考试、面试问题分析 160

8.5实验7异常处理 161

8.6问题集锦与解答 162

8.7自我检测 162

8.8本章小结 162

第9章多线程 163

9.1多线程的概念 163

9.1.1 Java线程的模型 163

9.1.2启动接口 164

9.1.3线程调度 165

9.1.4同步 166

9.1.5消息 166

9.2线程的基本控制 167

9.2.1显式定义线程 167

9.2.2多线程例子 167

9.2.3启动一个线程 168

9.2.4操作线程 168

9.2.5暂停一个线程 168

9.2.6停止一个线程 168

9.2.7常用线程API 169

9.3本章考试、面试问题分析 169

9.4实验8多线程 170

9.5问题集锦与解答 171

9.6本章小结 172

第10章流式I/O和文件 173

10.1 Java输入输出流 173

10.1.1概述 173

10.1.2标准输入输出例子 173

10.2普通输入输出类 174

10.2.1 InputStream类型 174

10.2.2 OutputStream类型 175

10.2.3缓冲输入文件 179

10.2.4格式化的内存输入 180

10.3文件 181

10.3.1创建一个新的文件对象 181

10.3.2在实际编程中文件读写及随机访问 182

10.3.3 Java的文件管理 190

10.4对象序列化 192

10.5用Zip进行多文件保存 196

10.6本章考试、面试问题分析 198

10.7实验9流式I/O和文件 199

10.8本章小结 201

第11章Java网络编程 202

11.1 Java网络通信 202

11.1.1连接的地址 202

11.1.2端口号 203

11.1.3网络基础知识及Java网络模型 203

11.1.4面向连接的流式套接字 203

11.1.5无连接的数据报 207

11.1.6 DatagramPacket 207

11.1.7 DatagramSocket 207

11.1.8 UDP实现客户端/服务器端通讯 207

11.1.9 Java访问网络资源 209

11.2实验10 Java网络编程 211

11.3本章小结 212

第12章Swing用户界面设计 213

12.1 Java Swing 213

12.1.1概述 213

12.1.2 Swing的类层次结构 214

12.1.3 Swing组件的多样化 215

12.1.4 MVC (Model-View-Control)体系结构 215

12.1.5可存取性支持 216

12.1.6支持键盘操作 216

12.1.7设置边框 216

12.1.8使用图标(Icon) 217

12.1.9 Swing程序结构简介 217

12.1.10 Swing组件和容器 217

12.2图解应用集成开发环境设计GUI程序 220

12.2.1框架API概述 220

12.2.2图解创建GUI程序 220

12.3各种容器面板和组件 225

12.3.1分层面板(JLayeredPane) 226

12.3.2面板(JPanel) 226

12.2.3滚动窗口(JScrollPane) 228

12.3.4选项板(JTabbedPane) 228

12.3.5工具栏(JToolBar ) 228

12.3.6内部框架(JInternalFrame ) 228

12.3.7按钮(JButton) 229

12.3.8复选框(JCheckBox ) 230

12.3.9单选按钮(JRadioButton ) 230

12.3.10选择框(JComboBox) 230

12.3.11文件选择器(JFileChooser ) 231

12.3.12标签(JLabel ) 234

12.3.13列表(List) 234

12.3.14菜单(JMenu ) 237

12.3.15进程条(JProgressBar) 237

12.3.16滑动条(JSlider) 239

12.3.17表格(JTable ) 239

12.3.18树(JTree) 243

12.3.19消息框(Message box) 246

12.3.20文本区域 249

12.3.21绘图 252

12.3.22对话框(Dialog box) 254

12.3.23选择外观(Look&Feel) 254

12.4本章考试、面试问题分析 255

12.5实验11建立图形用户界面 255

12.6本章小结 256

第13章Applet设计 257

13.1 Applet简介 257

13.1.1编写Applet小程序 257

13.1.2 Applet嵌入到网页 258

13.2 Applet基础 261

13.2.1 Applet类与JApplet类 261

13.2.2 Applet与Application的区别 261

13.2.3 Applet安全性 262

13.3 Applet的应用 262

13.4将Application转化为Applet 264

13.4.1 Application程序 264

13.4.2将Application转化为Applet 265

13.4.3 Application与Applet组合 266

13.5 Applet与JAR文件 267

13.5.1 JAR文件概述 267

13.5.2 jar命令 268

13.5.3为Applet数字签名 269

13.5.4 JNLP与Java Web Start 272

13.6本章考试、面试问题分析 277

13.7实验12 Applet设计 278

13.8本章小结 278

第3篇Java扩展功能把脉篇 280

第14章Java图形图像编程 280

14.1 Java 2D 280

14.1.1概述 280

14.1.2图形、文本和图像增强功能 281

14.2基本图形绘制模型 281

14.2.1坐标系统 282

14.2.2变换 283

14.2.3字体 283

14.2.4图像 283

14.2.5填充和笔画 284

14.2.6复合 284

14.3 Java 2D API包 285

14.4图形的绘制 287

14.4.1接口和类 287

14.4.2图形绘制过程 287

14.4.3 Stroke属性 289

14.4.4 Fill属性 290

14.4.5剪切路径 290

14.4.6变换 290

14.4.7 Composite属性 291

14.5设置Graphics2D上下文环境 291

14.5.1指定Stroke属性 291

14.5.2指定Fill属性 292

14.5.3使用纹理填充形状 293

14.5.4设置剪切路径 293

14.5.5在Java 2D中绘制各种样式的图形 294

14.5.6设置Graphics2D变换 297

14.5.7指定复合样式 298

14.6图形元素的绘制 300

14.6.1绘制形状 301

14.6.2填充形状 302

14.7几何形状 302

14.8几何的概念 304

14.9字体和文本布局 308

14.9.1接口和类 308

14.9.2管理文本布局 309

14.9.3定文本布局 310

14.9.4双插入记号 310

14.9.5移动插入记号 310

14.9.6选中测试 311

14.9.7显示所选内容 311

14.9.8查询布局度量 311

14.9.9绘制文本查询 312

14.10 Java 3D介绍 313

14.10.1 Java 3D的安装和运行 314

14.10.2 Java 3D数据结构 314

14.10.3 Virtual Universe 317

14.10.4 Java 3D的坐标系统 317

14.10.5 Java 3D API 318

14.10.6创建Java 3D应用程序 319

14.11 BranchGroup类 323

14.12 Canvas3D类 323

14.13 Transform3D类 323

14.14 TransformGroup类 324

14.15 Vector3f类 324

14.16 Primitive类 326

14.17 OrbitBehavior类 326

14.18 Light类 327

14.18.1光的类型 327

14.18.2场景图中的光 327

14.18.3材质特性 327

14.19材质贴图 328

14.19.1装入材质 328

14.19.2粘贴到图像上 328

14.19.3压缩和拉伸材质 328

14.19.4材质贴图示例 329

14.20 Behavior类 331

14.20.1唤醒调用 331

14.20.2 processStimulus方法 332

14.20.3旋转示例 332

14.21实验13图形与多媒体处理 335

14.22本章小结 335

第15章JDBC技术 336

15.1 JDBC介绍 336

15.1.1 JDBC的用途 337

15.1.2 JDBC与ODBC和其他API的比较 337

15.1.3两层模型和三层模型 338

15.1.4 SQL的一致性 338

15.1.5 JDBC驱动程序的类型 339

15.2 Connection对象 339

15.2.1建立连接 339

15.2.2发送SQL 340

15.2.3事务隔离级别 340

15.2.4驱动设置 340

15.3 Statement对象 342

15.3.1创建Statement对象 342

15.3.2使用Statement对象执行语句 342

15.3.3语句完成 342

15.3.4关闭Statement对象 343

15.3.5 Statement对象中的SQL转义语法 343

15.4 ResultSet对象 343

15.4.1行和光标 343

15.4.2列 344

15.4.3数据类型和转换 344

15.5 PreparedStatement接口 344

15.5.1创建PreparedStatement对象 345

15.5.2传递IN参数 345

15.5.3 IN参数中数据类型的一致性 345

15.6 CallableStatement对象 345

15.6.1创建CallableStatement对象 346

15.6.2 IN和OUT参数 346

15.6.3 INOUT参数 346

15.6.4先检索结果,再检索OUT参数 347

15.6.5检索作为OUT参数的NULL值 347

15.7 JDBC 4.0新特性 347

15.7.1自动加载驱动 347

15.7.2 RowId 348

15.7.3 SQL XML 348

15.7.4 SQLExcpetion的增强 349

15.8本章考试、面试问题分析 349

15.9实验14数据库的连接 350

15.10本章小结 351

第4篇Java项目实战把脉篇 353

第16章M P3/M P4媒体播放器设计 353

16.1在Applet中播放声音 353

16.1.1 Java声音处理 353

16.1.2应用AudioClip接口来实现声音的播放 354

16.1.3应用Sound API来处理声音 355

16.2 Java媒体框架 358

16.2.1 JMF系统介绍 358

16.2.2数据源(Data source) 359

16.2.3捕获设备(Capture Device) 359

16.2.4播放器(Player) 359

16.2.5处理器(Processor) 360

16.2.6数据池(DataSink) 361

16.2.7数据格式(Format) 361

16.2.8管理器(Manager) 361

16.3 MP3/MP4媒体播放器的设计 362

16.3.1 JMF的下载和安装 362

16.3.2 MP3/MP4媒体播放器设计分析 363

16.3.3 Player对象的扩展 364

16.3.4 MP3/MP4媒体播放器主程序的设计 366

第17章网络实时流媒体收发系统 369

17.1获取媒体数据的分析 369

17.1.1注册音频和视频截取设备 369

17.1.2获取音频和视频数据 370

17.1.3保存摄像头数据为视频文件 371

17.1.4摄像头拍照 373

17.1.5通过网络发送实时媒体流数据 374

17.1.6通过网络接收实时媒体流数据 376

17.2网络实时流媒体收发系统的设计 378

17.2.1 Java网络流媒体播放器分析 378

17.2.2媒体设备捕捉和发送类 379

17.2.3媒体播放主程序类 385

17.2.4同时接收多个流媒体类 388

17.3本章小结 391

第18章航空电子票务综合管理系统 392

18.1系统需求说明 392

18.1.1需求分析 392

18.1.2主要用例说明 392

18.2业务实体层设计 393

18.2.1设计域模型 393

18.2.2设计数据模型 394

18.3系统设计 395

18.3.1程序的实现 395

18.3.2航空电子票务管理类 396

18.3.3数据库连接类 402

18.3.4每期航班座位信息类 404

18.3.5航班管理类 409

18.3.6航班简单查询类 412

18.3.7综合信息查询类 419

18.3.8定票管理类 431

18.3.9定票客户信息类 443

18.3.10退票管理类 449

18.3.11查询客户己定票信息类 456

18.4本章小结 459