《Java编程入门与应用》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:孟丽丝,张雪编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2017
  • ISBN:9787302478454
  • 页数:563 页
图书介绍:本书知识全面、内容丰富,详细介绍了使用Java语言进行程序开发需要掌握的知识。读者通过本书可以学习到Java语言中的面向对象编程,包括类与对象的基本知识及面向对象的封装、继承、多态。然后介绍了Java的开发应用,包括Java中的常用工具类、异常处理、I/O流、集合框架、图形用户界面和数据库编程等相关知识。书中知识结合具体实例进行介绍,涉及的程序代码给出了详细的注释,可以使读者快速提高开发技能。

第1章 认识Java 2

1.1 Java简介 2

1.1.1 什么是Java语言 2

1.1.2 Java语言的特点 3

1.1.3 学习Java的最佳途径 4

1.2 高手带你做——搭建Java开发环境 5

1.3 高手带你做——配置环境变量 7

1.4 高手带你做——输出“你好Java” 9

1.4.1 编写Java源程序 9

1.4.2 编译和运行 10

1.4.3 编译常见错误解决方法 11

1.4.4 Java程序运行流程 11

1.5 Java程序的基本要素 12

1.5.1 标识符 13

1.5.2 关键字 13

1.5.3 注释 14

1.5.4 修饰符 15

1.5.5 语句和块 15

1.5.6 类 15

1.5.7 方法 15

1.5.8 main()方法 15

1.6 Java推荐编程规范 16

1.7 高手带你做——安装Eclipse 16

1.8 高手带你做——创建第一个Java项目 19

1.9 高手带你做——修改Eclipse编辑器字体大小 23

1.10 高手带你做——Eclipse调试代码 24

1.11 成长任务 26

第2章 Java程序设计基础 28

2.1 常量 28

2.1.1 常量值 28

2.1.2 定义常量 29

2.2 变量 29

2.2.1 声明变量 30

2.2.2 变量赋值 30

2.2.3 变量的作用域 30

2.3 数据类型 32

2.3.1 数据类型的分类 33

2.3.2 整数类型 33

2.3.3 浮点类型 34

2.3.4 布尔类型 36

2.3.5 字符类型 36

2.4 基本运算符 37

2.4.1 算术运算符 37

2.4.2 赋值运算符 39

2.4.3 逻辑运算符 41

2.4.4 关系运算符 41

2.4.5 自增和自减运算符 43

2.5 位运算符 45

2.5.1 位逻辑运算符 45

2.5.2 位移运算符 47

2.5.3 复合位赋值运算符 48

2.6 高手带你做——认识条件运算符 48

2.7 运算符优先级 49

2.8 类型转换 50

2.8.1 隐式转换 51

2.8.2 显式转换 51

2.9 成长任务 52

第3章 流程控制语句 54

3.1 了解算法 54

3.1.1 算法的定义 54

3.1.2 高手带你做——使用算法求1~4的和 54

3.1.3 算法描述方式 55

3.2 顺序结构 58

3.2.1 语句编写方式 58

3.2.2 空语句 59

3.2.3 表达式语句 59

3.2.4 复合语句 59

3.3 if条件语句 60

3.3.1 if语句语法 60

3.3.2 双条件if语句 62

3.3.3 多条件if语句 63

3.3.4 高手带你做——嵌套if的使用 65

3.4 switch条件语句 67

3.4.1 switch语句格式 67

3.4.2 if语句和switch语句的区别 69

3.4.3 高手带你做——根据出生日期判断星座 70

3.5 循环语句 71

3.5.1 while语句 72

3.5.2 do…while语句 72

3.5.3 for语句 74

3.5.4 高手带你做——九九乘法口诀表 77

3.5.5 foreach语句 78

3.6 跳转语句 79

3.6.1 return语句 79

3.6.2 break语句 80

3.6.3 continue语句 84

3.7 高手带你做——判断闰年和输出某月的天数 86

3.8 高手带你做——输出杨辉三角形 87

3.9 成长任务 89

第4章 字符串处理 92

4.1 定义字符串 92

4.1.1 直接定义字符串 92

4.1.2 使用String类定义 92

4.2 连接字符串 93

4.2.1 使用连接运算符 93

4.2.2 使用concat()方法 94

4.2.3 高手带你做——连接其他类型数据 95

4.3 基本处理 96

4.3.1 获取字符串长度 96

4.3.2 转换大小写 97

4.3.3 去除空格 98

4.3.4 提取子字符串 98

4.3.5 分割字符串 100

4.3.6 高手带你做——截取新闻标题 100

4.4 替换字符串 102

4.4.1 replace()方法 102

4.4.2 replaceFirst()方法 102

4.4.3 replaceAll()方法 103

4.4.4 高手带你做——批量替换字符串 103

4.5 比较字符串 104

4.5.1 equals()方法 104

4.5.2 equalsIgnoreCase()方法 105

4.5.3 compareTo()方法 106

4.6 查找字符串 107

4.6.1 根据字符查找 107

4.6.2 根据索引查找 108

4.6.3 高手带你做——校验文件名和邮箱地址 109

4.7 高手带你做——加密和解密 110

4.8 StringBuffer类 111

4.8.1 创建StringBuffer类 112

4.8.2 追加字符串 112

4.8.3 替换字符 114

4.8.4 反转字符串 114

4.8.5 删除字符串 114

4.8.6 高手带你做——替换特殊符号 115

4.9 正则表达式 116

4.9.1 元字符 116

4.9.2 限定符 117

4.9.3 高手带你做——使用正则表达式验证电话号码 117

4.9.4 高手带你做——验证IP地址是否合法 118

4.10 成长任务 120

第5章 数字和日期处理 122

5.1 数学处理类 122

5.1.1 静态常量 122

5.1.2 求最大值、最小值和绝对值 122

5.1.3 求整运算 123

5.1.4 三角函数运算 124

5.1.5 指数运算 125

5.2 高手带你做——生成随机数 125

5.3 高手带你做——数字格式化 128

5.4 大数字运算 129

5.4.1 BigInteger类 129

5.4.2 BigDecimal类 131

5.5 日期处理类 133

5.5.1 Date类 133

5.5.2 Calendar类 135

5.6 日期格式化 138

5.6.1 DateFormat类 139

5.6.2 SimpleDateFormat类 140

5.7 高手带你做——计算课程结束日期 142

5.8 高手带你做——实现日期查询功能 144

5.9 成长任务 149

第6章 Java内置包装类 152

6.1 Object类 152

6.2 Integer类 154

6.3 Float类 156

6.4 Double类 158

6.5 Number类 159

6.6 Character类 160

6.7 Boolean类 163

6.8 Byte类 164

6.9 System类 165

6.9.1 System类的成员变量 166

6.9.2 System类的成员方法 167

6.10 成长任务 169

第7章 数组处理 171

7.1 数组简介 171

7.2 一维数组 171

7.2.1 创建一维数组 171

7.2.2 分配空间 172

7.2.3 初始化一维数组 173

7.2.4 获取单个元素 174

7.2.5 获取全部元素 175

7.2.6 高手带你做——统计商品信息 175

7.3 二维数组 176

7.3.1 创建二维数组 177

7.3.2 初始化二维数组 177

7.3.3 获取单个元素 177

7.3.4 获取全部元素 178

7.3.5 获取整行元素 179

7.3.6 获取整列元素 180

7.4 多维数组 181

7.5 数组的常用处理 181

7.5.1 比较数组 182

7.5.2 填充数组 182

7.5.3 查找数组 183

7.6 复制数组 185

7.6.1 使用copyOf()方法和copyOfRange()方法 185

7.6.2 使用arraycopy()方法 187

7.6.3 使用clone()方法 189

7.7 数组排序 190

7.7.1 内置排序法 190

7.7.2 冒泡排序法 191

7.7.3 快速排序法 192

7.7.4 选择排序法 194

7.7.5 直接插入法 195

7.8 高手带你做——实现商品信息查询功能 196

7.9 成长任务 197

第8章 类和对象 200

8.1 面向对象概述 200

8.1.1 对象的概念 200

8.1.2 面向对象的三大核心特性 200

8.2 高手带你做——认识类和对象 202

8.3 使用类 203

8.3.1 定义类 203

8.3.2 属性 204

8.3.3 高手带你做——创建学生类 205

8.3.4 方法 206

8.3.5 this关键字 208

8.4 对象 209

8.4.1 对象的创建 209

8.4.2 访问对象的属性和行为 212

8.4.3 对象的销毁 212

8.4.4 高手带你做——用户修改密码 213

8.5 作用域修饰符 215

8.5.1 访问控制修饰符 215

8.5.2 static静态修饰符 217

8.5.3 final修饰符 221

8.6 特殊方法 222

8.6.1 main()方法 222

8.6.2 方法的可变参数 224

8.6.3 构造方法 225

8.6.4 高手带你做——查看个人信息 227

8.6.5 析构方法 228

8.7 包 230

8.7.1 系统包 230

8.7.2 自定义包 231

8.8 高手带你做——使用自定义包 231

8.9 成长任务 232

第9章 继承和多态 234

9.1 类的封装 234

9.2 高手带你做——封装图书信息类 235

9.3 类的继承 236

9.3.1 简单继承 237

9.3.2 单继承 239

9.3.3 super关键字 240

9.3.4 对象类型转换 241

9.3.5 强制对象类型转换 243

9.4 方法重载 244

9.5 方法重写 245

9.6 多态 247

9.7 抽象类 249

9.8 接口 251

9.8.1 定义接口 251

9.8.2 实现接口 252

9.9 高手带你做——接口和抽象类的区别 254

9.9.1 基本语法区别 254

9.9.2 设计思想区别 255

9.10 内部类 257

9.10.1 内部类简介 257

9.10.2 高手带你做——使用实例内部类 258

9.10.3 高手带你做——使用静态内部类 261

9.10.4 高手带你做——使用局部内部类 262

9.11 匿名类 263

9.12 高手带你做——利用内部类实现多重继承 265

9.13 成长任务 266

第10章 Java异常处理 268

10.1 了解Java中的异常 268

10.1.1 异常简介 268

10.1.2 高手带你做——异常产生的原因及使用原则 268

10.1.3 异常类型 269

10.2 异常处理语句 270

10.2.1 异常语句结构 270

10.2.2 try catch语句 270

10.2.3 高手带你做——计算平均成绩 272

10.2.4 try catch finally语句 273

10.3 异常的声明和抛出 275

10.3.1 throws声明异常 276

10.3.2 throw抛出异常 277

10.4 自定义异常 278

10.5 高手带你做——验证用户登录信息 280

10.6 高手带你做——完善除法运算的错误提示 282

10.7 成长任务 285

第11章 集合、泛型和枚举 288

11.1 Java集合类概述 288

11.1.1 集合中的接口 288

11.1.2 接口实现类 288

11.2 Collection接口 289

11.3 List集合 291

11.3.1 ArrayList类 291

11.3.2 LinkedList类 294

11.4 Set集合 296

11.4.1 HashSet类 296

11.4.2 TreeSet类 297

11.5 Map集合 300

11.6 Collections类 301

11.6.1 正向排序 301

11.6.2 逆向排序 302

11.6.3 复制 303

11.6.4 填充 305

11.7 泛型 306

11.7.1 泛型集合 306

11.7.2 泛型类 308

11.7.3 泛型方法 309

11.7.4 泛型的高级用法 310

11.8 高手带你做——图书查询功能 311

11.9 枚举 314

11.9.1 声明枚举 314

11.9.2 枚举类 315

11.9.3 为枚举添加方法 316

11.9.4 EnumMap与EnumSet 319

11.10 成长任务 320

第12章 Java反射机制 322

12.1 Java反射简介 322

12.2 反射在类中的应用 323

12.2.1 访问构造方法 323

12.2.2 访问方法 326

12.2.3 访问成员变量 330

12.3 高手带你做——在远程方法中使用反射机制 333

12.4 成长任务 338

第13章 Java输入/输出流 340

13.1 流概述 340

13.1.1 什么是输入/输出流 340

13.1.2 输入流 340

13.1.3 输出流 341

13.2 系统流 342

13.3 操作文件 344

13.3.1 File类简介 344

13.3.2 获取文件属性 345

13.3.3 创建和删除文件 346

13.3.4 创建和删除目录 346

13.3.5 遍历目录 347

13.4 高手带你做——动态读取文件内容 349

13.5 使用字节流 351

13.5.1 字节输入流 351

13.5.2 字节输出流 352

13.5.3 字节数组输入流 353

11.5.4 字节数组输出流 354

13.5.5 文件输入流 355

13.5.6 文件输出流 356

13.6 使用字符流 358

13.6.1 字符输入流 359

13.6.2 字符输出流 359

13.6.3 字符文件输入流 360

13.6.4 字符文件输出流 361

13.6.5 字符缓冲区输入流 363

13.6.6 字符缓冲区输出流 364

13.7 高手带你做——保存图书信息 365

13.8 成长任务 367

第14章 Java多线程编程 370

14.1 线程简介 370

14.2 实现线程 371

14.2.1 继承Thread类 371

14.2.2 实现Runnable接口 375

14.2.3 两种方法比较 376

14.3 线程的生命周期 376

14.4 高手带你做——多线程之间访问实例变量 377

14.5 高手带你做——解决非线程安全问题 380

14.6 线程同步 382

14.7 线程操作方法 384

14.7.1 currentThread()方法 384

14.7.2 isAlive()方法 386

14.7.3 sleep()方法 389

14.7.4 getld()方法 390

14.7.5 yield()方法 391

14.8 高手带你做——停止线程 392

14.8.1 停止不了的线程 392

14.8.2 判断线程是不是停止状态 393

14.8.3 异常法停止线程 396

14.8.4 在休眠中停止 398

14.8.5 强制停止线程 400

14.8.6 释放锁的不良后果 401

14.8.7 使用return停止线程 403

14.9 高手带你做——暂停线程 404

14.9.1 suspend()与resume()方法 404

14.9.2 独占问题 406

14.9.3 不同步问题 408

14.10 线程的优先级和执行顺序 409

14.10.1 优先级概述 409

14.10.2 使用优先级 410

14.11 成长任务 412

第15章 JDBC数据库编程 414

15.1 JDBC技术 414

15.1.1 JDBC简介 414

15.1.2 JDBCAPI简介 414

15.1.3 JDBC驱动类型 415

15.2 连接数据库 417

15.3 使用JDBC驱动程序 417

15.3.1 提供JDBC连接的URL 418

15.3.2 加载JDBC驱动程序 418

15.3.3 数据库驱动类 420

15.3.4 关闭数据库连接 422

15.4 高手带你做——使用ODBC桥连接数据库 423

15.5 执行SQL语句 424

15.5.1 Statement对象 424

15.5.2 PreparedStatement对象 426

15.5.3 CallableStatement对象 428

15.6 处理查询结果 430

15.6.1 使用ResultSet 430

15.6.2 ResultSet接口的方法 431

15.6.3 ResultSetMetaData对象 433

15.7 高级结果集 434

15.7.1 可滚动结果集 434

15.7.2 可更新结果集 437

15.8 高手带你做——获取列的信息 440

15.9 高手带你做——商品管理系统 441

15.10 成长任务 446

第16章 Java网络编程 448

16.1 网络基础 448

16.1.1 网络分类 448

16.1.2 网络编程模型 448

16.1.3 网络协议 449

16.1.4 套接字和端口 450

16.2 InetAddress地址类 450

16.3 TCP通信 452

16.3.1 ServerSocket类 452

16.3.2 Socket类 454

16.3.3 高手带你做——客户端与服务器端的简单通信 456

16.3.4 高手带你做——传输对象数据 458

16.4 UDP通信 462

16.4.1 DatagramPacket类 462

16.4.2 DatagramSocket类 463

16.5 URL通信 465

16.5.1 URL概念 465

16.5.2 URL类 466

16.5.3 URLConneetion类 466

16.5.4 高手带你做——提取URL协议名称 467

16.6 成长任务 468

第17章 Swing界面编程基础 470

17.1 Swing简介 470

17.1.1 Swing类库结构 470

17.1.2 Swing包 470

17.1.3 Swing容器 471

17.2 窗口和面板 472

17.2.1 JFrame窗口 472

17.2.2 JPanel面板 473

17.3 布局管理器 474

17.3.1 边框布局管理器 475

17.3.2 流式布局管理器 476

17.3.3 卡片布局管理器 478

17.3.4 网格布局管理器 479

17.3.5 网格包布局管理器 480

17.3.6 盒布局管理器 483

17.4 基本组件 484

17.4.1 标签组件 484

17.4.2 按钮组件 486

17.4.3 单行文本框组件 487

17.4.4 文本域组件 489

17.4.5 复选框组件 490

17.4.6 单选按钮 491

17.4.7 下拉列表组件 492

17.4.8 列表框组件 494

17.5 高手带你做——实现计算器界面 495

17.6 事件处理 497

17.6.1 事件处理模型 497

17.6.2 动作事件监听器 498

17.6.3 焦点事件监听器 499

17.6.4 高手带你做——监听列表项选择事件 500

17.7 高手带你做——星座选择器 501

17.8 成长任务 504

第18章 Swing高级组件 506

18.1 高级布局组件 506

18.1.1 滑块 506

18.1.2 进度条 508

18.1.3 计时器 511

18.1.4 菜单栏 513

18.1.5 工具栏 518

18.2 选择器组件 521

18.2.1 文件选择器 521

18.2.2 颜色选择器 523

18.3 对话框 524

18.3.1 确认对话框 524

18.3.2 消息对话框 525

18.3.3 输入对话框 526

18.3.4 选项对话框 527

18.4 表格 527

18.5 树 531

18.6 选项卡 533

18.7 高手带你做——制作文本编辑器 535

18.8 成长任务 538

第19章 Java设计模式 540

19.1 认识设计模式 540

19.1.1 设计模式简介 540

19.1.2 设计模式的理解 540

19.1.3 设计模式的分类 541

19.1.4 为什么要学习设计模式 542

19.1.5 如何学习设计模式 543

19.1.6 学习设计模式的层次 543

19.1.7 面向对象的设计原则 544

19.2 单例模式 545

19.3 工厂模式 546

19.3.1 简单工厂模式 546

19.3.2 工厂方法模式 548

19.3.3 抽象工厂模式 551

19.4 适配器模式 553

19.5 外观模式 555

19.6 观察者模式 558

19.7 状态模式 560

19.8 不要过度使用设计模式 563