实战Java程序设计北京尚学堂科技有限公司编著著编程语言新华书店全新速发pdf下载pdf下载

实战Java程序设计北京尚学堂科技有限公司编著著编程语言新华书店全新速发百度网盘pdf下载

作者:
简介:本篇主要提供实战Java程序设计北京尚学堂科技有限公司编著著编程语言新华书店全新速发pdf下载
出版社:黄岛区新华书店图书专营店
出版时间:2018-06
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

作  者:北京尚学堂科技有限公司 编著 著
定  价:89
出 版 社:清华大学出版社
出版日期:2018年06月01日
页  数:450
装  帧:平装
ISBN:9787302484981
章 Java入门 1
1.1 计算机语言发展史及未来方向 1
1.1.1 计算机已经成为人类大脑的延伸 1
1.1.2 算法是计算机的“灵魂”,编程语言是塑造计算机“灵魂”的工具 2
1.1.3 为什么担心软件开发人才饱和是多余的 3
1.1.4 未来30年必将是软件人才的世界 3
1.2 常用的编程语言 4
1.3 Java语言介绍 6
1.3.1 Java发展简史 6
1.3.2 Java的核心优势 6
1.3.3 Java各版本的含义 7
1.3.4 Java的特性 7
1.3.5 Java应用程序的运行机制 9
1.3.6 JVM、JRE和JDK 9
1.4 Java开发环境搭建 10
1.4.1 JDK的下载和安装 10
1.4.2 环境变量Path的配置 12
1.4.3 JDK安装测试 13
1.5 建立和运行个Java程序 13
1.5.1 建立个Java程序 13
1.5.2 编译个程序时的常见错误 15
1.5.3 总结个Java程序 15
1.5.4 常用的DOS命令 16
1.6 常用的Java开发工具 16
1.7 Eclipse使用10分钟入门 17
1.7.1 下载和安装Eclipse 17
1.7.2 在Eclipse中创建Java项目 18
1.7.3 使用Eclipse开发和运行Java 程序 20
1.8 30分钟完成桌球小游戏项目 22
本章总结 28
本章作业 28
第2章数据类型和运算符 30
2.1 注释 30
2.2 标识符 31
2.3 Java中的关键字/保留字 32
2.4 变量 32
2.4.1 变量的本质 32
2.4.2 变量的分类 33
2.5 常量 35
2.6 基本数据类型 36
2.6.1 整型 36
2.6.2 浮点型 37
2.6.3 字符型 39
2.6.4 布尔型 40
2.7 运算符 40
2.7.1 算术运算符 40
2.7.2 赋值及其扩展赋值运算符 41
2.7.3 关系运算符 42
2.7.4 逻辑运算符 42
2.7.5 位运算符 43
2.7.6 字符串连接符 43
2.7.7 条件运算符 43
2.7.8 运算符优先级问题 44
2.8 数据类型的转换 44
2.8.1 自动类型转换 45
2.8.2 强制类型转换 45
2.8.3 基本类型转换时的常见错误和问题 46
2.9 简单的键盘输入和输出 46
本章总结 47
本章作业 48
第3章控制语句 50
3.1 条件判断结构 50
3.1.1 if单分支结构 51
3.1.2 if-else双分支结构 52
3.1.3 if-else if-else多分支结构 54
3.1.4 switch多分支结构 55
3.2 循环结构 57
3.2.1 while循环 57
3.2.2 do-while循环58
3.2.3 for循环 59
3.2.4 嵌套循环 62
3.2.5 break语句和continue语句 63
3.2.6 带标签的break语句和continue 语句 64
3.3 语句块 65
3.4 方法 65
3.5 方法的重载 67
3.6 递归结构 68
本章总结 70
本章作业 71
第4章 Java面向对象编程基础 74
4.1 面向过程和面向对象思想 74
4.2 对象的进化史 75
4.3 对象和类的概念 77
4.4 类和对象初步 77
4.4.1 个类的定义 78
4.4.2 属性(field成员变量) 78
4.4.3 方法 79
4.4.4 一个典型类的定义和UML图 79
4.5 面向对象的内存分析 80
4.6 对象的使用及内存分析 81
4.7 构造器 82
4.8 构造器的重载 83
4.9 垃圾回收机制 84
4.9.1 垃圾回收的原理和算法 84
4.9.2 通用的分代垃圾回收机制 85
4.9.3 JVM调优和Full GC 86
4.9.4 开发中容易造成内存泄露的操作 86
4.10 this关键字 87
4.11 static关键字 89
4.12 静态初始化块 90
4.13 参数传值机制 91
4.14 包 92
4.14.1 package 92
4.14.2 JDK中的常用包 92
4.14.3 导入类 93
4.14.4 静态导入 94
本章总结 94
本章作业 95
第5章 Java面向对象编程进阶 97
5.1 继承 97
5.1.1 继承的实现 97
5.1.2 instanceof运算符 98
5.1.3 继承的使用要点 99
5.1.4 方法的重写 99
5.2 Object类100
5.2.1 Object类的基本特性 100
5.2.2 toString方法 101
5.2.3 ==和equals方法102
5.3 super关键字 103
5.4 封装 104
5.4.1 封装的作用和含义 104
5.4.2 封装的实现——使用访问控制符 106
5.4.3 封装的使用细节 109
5.5 多态 110
5.6 对象的转型112
5.7 final关键字113
5.8 抽象方法和抽象类 114
5.9 接口interface 115
5.9.1 接口的作用 115
5.9.2 定义和使用接口 116
5.9.3 接口的多继承 117
5.9.4 面向接口编程 118
5.10 内部类 119
5.10.1 内部类的概念 119
5.10.2 内部类的分类 120
5.11 字符串String 123
5.11.1 String基础 124
5.11.2 String类和常量池 124
5.11.3 阅读API文档 125
5.11.4 String类的常用方法 127
5.11.5 字符串相等的判断 129
5.12 设计模式相关知识 130
5.12.1 开闭原则 130
5.12.2 相关设计模式 130
本章总结 130
本章作业 132
第6章异常机制 136
6.1 导引问题 136
6.2 异常的概念 137
6.3 异常的分类 138
6.3.1 Error 138
6.3.2 Exception139
6.3.3 RuntimeException——运行时异常 139
6.3.4 CheckedException——已检查异常 143
6.4 异常的处理方式之一:捕获异常 143
6.5 异常的处理方式之二:声明异常(throws子句) 145
6.6 自定义异常 146
6.7 如何利用百度解决异常问题 148
本章总结 148
本章作业 149
第7章数组 151
7.1 数组概述 151
7.2 创建数组和初始化 151
7.2.1 数组声明 151
7.2.2 初始化 153
7.3 常用数组操作 154
7.3.1 数组的遍历 154
7.3.2 for-each 循环 155
7.3.3 数组的复制 155
7.3.4 java.util.Arrays类 156
7.4 多维数组 158
7.5 用数组存储表格数据 160
7.6 冒泡排序算法 161
7.6.1 冒泡排序的基础算法 161
7.6.2 冒泡排序的优化算法 162
7.7 二分法检索 163
本章总结 165
本章作业 166
第8章常用类 168
8.1 基本数据类型的包装类 168
8.1.1 包装类的基本知识 168
8.1.2 包装类的用途 169
8.1.3 自动装箱和拆箱 170
8.1.4 包装类的缓存问题 172
8.2 字符串相关类 174
8.2.1 String类 174
8.2.2 StringBuffer 和StringBuilder 176
8.2.3 不可变和可变字符序列使用陷阱 178
8.3 时间处理相关类 179
8.3.1 Date时间类(java.util.Date) 179
8.3.2 DateFormat类和 SimpleDateFormat类 181
8.3.3 Calendar日历类 183
8.4 Math类186
8.5 File类 188
8.5.1 File类的基本用法 188
8.5.2 递归遍历目录结构和树状展现 191
8.6 枚举 192
本章总结 194
本章作业 194
第9章容器 197
9.1 泛型 198
9.1.1 自定义泛型 198
9.1.2 容器中使用泛型 198
9.2 Collection接口 199
9.3 List接口 200
9.3.1 List特点和常用方法 200
9.3.2 ArrayList的特点和底层实现 203
9.3.3 LinkedList的特点和底层实现 204
9.3.4 Vector 向量 205
9.4 Map接口 205
9.4.1 HashMap和HashTable 206
9.4.2 HashMap底层实现详解 207
9.4.3 二树和红黑二树 212
9.4.4 TreeMap 的使用和底层实现 215
9.5 Set接口 215
9.5.1 HashSet的基本应用 215
9.5.2 HashSet的底层实现 216
9.5.3 TreeSet 的使用和底层实现 217
9.6 Iterator接口 218
9.6.1 迭代器介绍 218
9.6.2 使用Iterator迭代器遍历容器元素(List/Set/Map) 218
9.7 遍历集合的方法总结 220
9.8 Collections工具类 221
本章总结 222
本章作业 223
0章输入与输出技术 226
10.1 基本概念和I/O入门 227
10.1.1 数据源 227
10.1.2 流的概念 227
10.1.3 个简单的I/O流应用程序 228
10.1.4 Java中流的概念细分 230
10.1.5 Java中I/O流类的体系 231
10.1.大I/O抽象类 232
10.2 常用流详解 233
10.2.1 文件字节流 233
10.2.2 文件字符流 235
10.2.3 缓冲字节流 237
10.2.4 缓冲字符流 239
10.2.5 字节数组流 241
10.2.6 数据流 242
10.2.7 对象流 244
10.2.8 转换流 246
10.2.9 随意访问文件流 248
10.3 Java对象的序列化和反序列化 249
10.3.1 序列化和反序列化是什么 249
10.3.2 序列化涉及的类和接口 250
10.3.3 序列化与反序列化的步骤和实例 250
10.4 装饰器模式构建I/O流体系 252
10.4.1 装饰器模式简介 252
10.4.2 I/O流体系中的装饰器模式 253
10.5 Apache IOUtils和FileUtils的使用 253
10.5.1 Apache基金会介绍 254
10.5.2 FileUtils的妙用 254
10.5.3 IOUtils的妙用 258
本章总结 259
本章作业 260
1章多线程技术 262
11.1 基本概念 262
11.1.1 程序 262
11.1.2 进程 262
11.1.3 线程 263
11.1.4 线程和进程的区别 264
11.1.5 进程与程序的区别 264
11.2 Java中如何实现多线程 264
11.2.1 通过继承Thread类实现多线程265
11.2.2 通过Runnable接口实现多线程266
11.3 线程状态和生命周期 266
11.3.1 线程状态 266
11.3.2 终止线程的典型方式 267
11.3.3 暂停线程执行的常用方法 269
11.3.4 联合线程的方法 270
11.4 线程的基本信息和优先级别 272
11.4.1 获取线程基本信息的方法 272
11.4.2 线程的优先级 273
11.5 线程同步 274
11.5.1 什么是线程同步 274
11.5.2 实现线程同步 275
11.5.3 死锁及解决方案 277
11.6 线程并发协作(生产者-消费者模式) 280
11.7 任务定时调度 284
本章总结 285
本章作业 286
2章网络编程 289
12.1 基本概念 289
12.1.1 计算机网络 289
12.1.2 网络通信协议 290
12.1.3 数据封装与解封 291
12.1.4 IP地址与端口 293
12.1.5 URL 294
12.1.6 Socket 294
12.1.7 TCP协议和UDP协议 294
12.2 Java网络编程中的常用类 295
12.2.1 InetAddress 296
12.2.2 InetSocketAddress297
12.2.3 URL类 297
12.3 TCP通信的实现 298
12.4 UDP通信的实现 308
本章总结 313
本章作业 314
3章 J20飞机游戏项目 316
13.1 简介 316
13.2 游戏项目基本功能的开发 316
13.2.1 使用AWT 技术画出游戏主窗口(0.1版) 317
13.2.2 图形和文本绘制(0.2版) 319
13.2.3 ImageIO实现图片加载技术(0.3版) 319
13.2.4 多线程和内部类实现动画效果(0.4版) 321
13.2.5 双缓冲技术解决闪烁问题(0.4) 324
13.2.6 GameObject类设计(0.5版)325
13.3 飞机类设计(0.6版) 327
13.3.1 键盘控制原理 328
13.3.2 飞机类:增加操控功能 328
13.3.3 主窗口类:增加键盘监听 329
13.4 炮弹类设计(0.7版) 330
13.4.1 炮弹类的基本设计 330
13.4.2 炮弹任意角度飞行路径 331
13.4.3 容器对象存储多发炮弹 331
13.5 碰撞检测技术(0.8版) 332
13.5.1 矩形检测原理 333
13.5.2 炮弹和飞机碰撞检测 333
13.6 爆炸效果的实现(0.9版) 334
13.6.1 爆炸类的基本设计 335
13.6.2 主窗口类创建爆炸对象 335
13.7 其他功能(1.0版) 337
13.7.1 计时功能 337
13.7.2 学员开发Java基础小项目案例展示和说明 338
4章 GUI编程——Swing基础 341
14.1 AWT 简介 342
14.2 Swing简介 342
14.2.1 javax.swing.JFrame 343
14.2.2 javax.swing.JPanel 347
14.2.3 常用基本控件 349
14.2.4 布局管理器 352
本章总结 357
本章作业 358
5章事件模型 359
15.1 事件模型简介及常用事件类型 359
15.1.1 事件控制的过程 359
15.1.2 ActionEvent事件 361
15.1.3 MouseEvent事件364
15.1.4 KeyEvent事件 366
15.1.5 WindowEvent 事件 366
15.2 事件处理的实现方式 367
15.2.1 使用内部类实现事件处理 367
15.2.2 使用适配器实现事件处理 369
15.2.3 使用匿名内部类实现事件处理 372
本章总结 380
本章作业 380
6章 Swing中的其他控件 382
16.1 单选按钮控件(JRadioButton) 382
16.2 复选框控件(JCheckBox)385
16.3 下拉列表控件(JComboBox) 386
16.4 表格控件(JTable) 389
16.4.1 JTable 的简单应用 390
16.4.2 DefaultTableModel 393
16.5 用户注册案例 396
本章总结 402
本章作业 402
7章反射机制 404
17.1 动态语言 404
17.2 反射机制的本质和Class类 404
17.2.1 反射机制的本质 405
17.2.2 java.lang.Class类406
17.3 反射机制的常见操作 407
17.3.1 操作构造器(Constructor类) 408
17.3.2 操作属性(Field类) 409
17.3.3 操作方法(Method类) 410
17.4 反射机制的效率问题411
本章总结 412
本章作业 412
8章核心设计模式 415
18.1 GoF 23设计模式简介 415
18.2 单例模式 416
18.2.1 饿汉式 417
18.2.2 懒汉式 417
18.2.3 静态内部类式 418
18.2.4 枚举式单例 419
18.2.5 四种单例创建模式的选择 419
18.3 工厂模式 420
18.4 装饰模式 422
18.5 责任链模式 425
18.6 模板方法模式(钩子方法) 429
18.7 观察者模式 431
18.8 代理模式(动态) 433
本章总结 437
本章作业 438
附录Java 300集大型教学视频目录 440 

内容简介

这是一本既注重实战,同时也注重底层“内功”(内存分析、JVM底层、数据结构)训练的书,本书能帮助初学者打通Java编程“任督二脉”。本书集作者11年Java教学之精华,既适合初学者入门,也适合已经工作的开发者复习。全书共分18章,内容涵盖Java开发所需的相关内容及339个案例(很多案例对于工作人员也有很大的参考价值)。书中秉承尚学堂实战化教学理念,从靠前章开始介入实战项目,寓教于乐,读者可迅速进入开发者的角色。本书适合初学者入门,也适合高等院校相关专业作为教材使用,还可作为Java程序员的参考用书。
北京尚学堂科技有限公司 编著 著
北京尚学堂科技有限公司是一家从事、Java、人工智能、大数据云计算、培训、咨询为一体的软件公司,业务范围涉及软件开发培训、人力外包、人才猎头、线上教育等业务。公司主要由海外留学人员和靠前IT精英人士创建,现有员工近300人,14个校区遍及靠前11个城市,所培养的学员遍布各企业,如阿里巴巴、京东、百度等。