产品特色
编辑推荐
(1)一本真正属于国人自己原创的Java精品好书,没有重复,没有拷贝,更没有抄袭。
(2)大量通俗易懂的文字,图示、代码几乎全部有注释,帮助读者降低阅读难度,快速上手。
(3)示例丰富,讲解详细,全书636个实例及源代码,详尽讲解Java理论知识和实操技能。
(4)全书400多个“提示”、“注意”、“问答”,全面归纳Java开发各种疑难问题。
(5)200余到“常见面试题分析”,无缝对接Java求职。
(6)超过60小时的Java名师教学视频,市场价值几千元。视频不同于其他书的视频,其他书都是讲解PPT课件,本书是作者边讲编写,让读者有上中学看老师板书的感觉,更容易跟着老师的思路走,更容易学会。
(7)附赠教学大纲、综合试卷、PPT课件、源代码等丰富配套资源。
内容简介
**行代码 Java 视频讲解版从初学者的角度,以丰富的例子、通俗易懂的语言、简单的图示,详细地介绍了Java开发中重点用到的多种技术。全书分为15章,包括Java简介、程序基本概念、面向对象基本概念、面向对象高级知识、包及访问控制权限、异常的捕获及处理、Eclipse开发工具、Java新特性、多线程、Java常用类库、Java IO编程、Java网络编程、Java类集框架、Java数据库编程、DAO设计模式等内容。
**行代码 Java 视频讲解版列举了700多个小实例、100多个示意图,方便读者快速理解和应用。本书还附带了长达60小时的教学视频、源代码和PPT电子教案,另外专门提供了论坛为读者解答问题。本书作者有多年的开发和教学经验,希望能成为读者的良师益友。
**行代码 Java 视频讲解版面向Java技术的初学者,适合作为培训中心、计算机相关专业的教材。
作者简介
李兴华 Java培训讲师,Java EE高端培训讲师,北京魔乐科技(MLDN软件实训中心)教学总监,中科软通系统架构师,火车票网技术总监,北京伟仕嘉禾科技发展有限公司系统架构师,8年软件开发经验,5年高端培训经验,先后为40多家大中型企业做过培训,在JAVA培训方面享有很高的知名度。
目录
第一部分 Java基础知识
第1章 Java简介 2
(视频107分钟,例题2个,提示9个,注意6个,问答2个,技术穿越1个,面试题2个)
1.1 Java简介 2
1.2 JDK的安装与配置 8
1.3 第一个Java程序:永远的“Hello World !” 11
1.4 第一个程序解释 12
1.5 CLASSPATH 14
本章小结 15
课后习题 16
第2章 程序基本概念 17
(视频244分钟,例题66个,提示20个,注意12个,问答3个,技术穿越8个,面试题2个)
2.1 Java的注释 17
2.2 标识符与关键字 19
2.3 数据类型划分 20
2.3.1 整型 22
2.3.2 浮点数 27
2.3.3 字符型 29
2.3.4 布尔型 31
2.3.5 String型数据 31
2.4 运算符 33
2.4.1 关系运算符 36
2.4.2 数学运算符 37
2.4.3 三目运算 40
2.4.4 逻辑运算 41
2.4.5 位运算 44
2.5 程序逻辑控制 46
2.5.1 分支结构 47
2.5.2 循环结构 52
2.5.3 循环控制 58
2.6 方法的定义及使用 59
2.6.1 方法的基本概念 59
2.6.2 方法的重载 63
2.6.3 方法的递归调用 65
本章小结 66
课后习题 66
第二部分 面向对象
第3章 面向对象基本概念 70
(视频898分钟,例题135个,提示37个,注意12个,问答10个,技术穿越17个,面试题3个)
3.1 面向对象简介 70
3.2 类与对象 72
3.2.1 类与对象的基本概念 72
3.2.2 类与对象的基本定义 73
3.2.3 引用数据的初步分析 78
3.3 封装性初步分析 82
3.4 构造方法 85
3.5 匿名对象 90
3.6 简单Java类 91
3.7 数组 93
3.7.1 数组的基本概念 93
3.7.2 二维数组 97
3.7.3 数组与方法参数的传递 98
3.7.4 数组操作方法 108
3.7.5 对象数组 109
3.8 String类的基本概念 111
3.8.1 String类的两种实例化方式 111
3.8.2 字符串的比较1 112
3.8.3 字符串常量就是String的匿名
对象 114
3.8.4 两种实例化方式的区别 115
3.8.5 字符串一旦定义则不可改变 118
3.9 String类的常用方法 120
3.9.1 字符与字符串 122
3.9.2 字节与字符串 125
3.9.3 字符串的比较2 126
3.9.4 字符串的查找 127
3.9.5 字符串的替换 129
3.9.6 字符串的截取 130
3.9.7 字符串的拆分 130
3.9.8 其他方法 133
3.10 this关键字 136
3.10.1 调用本类属性 136
3.10.2 调用本类方法 138
3.10.3 表示当前对象 143
3.11 引用传递 144
3.11.1 引用传递基本概念 144
3.11.2 引用传递实际应用 148
3.12 数据表与简单Java类映射 153
3.13 对象比较 156
3.14 static关键字 160
3.14.1 static定义属性 160
3.14.2 static定义方法 162
3.14.3 主方法 164
3.14.4 static的实际应用 165
3.15 代码块 167
3.15.1 普通代码块 167
3.15.2 构造块 168
3.15.3 静态块 168
3.16 内部类 170
3.16.1 基本概念 170
3.16.2 使用static定义内部类 174
3.16.3 在方法中定义内部类 175
3.17 链表 177
3.17.1 链表的基本形式 178
3.17.2 链表的基本雏形 181
3.17.3 开发可用链表 184
3.17.4 使用链表 194
本章小结 200
课后习题 201
第4章 面向对象高级知识 204
(视频373分钟,例题96个,提示23个,注意9个,问答9个,技术穿越6个,面试题4个)
4.1 继承性 204
4.1.1 继承问题的引出 204
4.1.2 继承的实现 205
4.1.3 继承的限制 207
4.2 覆写 211
4.2.1 方法的覆写 211
4.2.2 属性的覆盖 217
4.3 继承案例 218
4.3.1 开发数组的父类 219
4.3.2 开发排序类 221
4.3.3 开发反转类 222
4.4 final关键字 223
4.5 多态性 224
4.6 抽象类 230
4.6.1 抽象类定义 230
4.6.2 抽象类的相关限制 232
4.6.3 抽象类应用——模板设计模式 236
4.7 接口 240
4.7.1 接口的基本定义 240
4.7.2 接口的实际应用——标准 245
4.7.3 接口的应用——工厂设计模式(Factory) 247
4.7.4 接口的应用——代理设计模式(Proxy) 250
4.7.5 抽象类与接口的区别 252
4.8 Object类 254
4.8.1 Object类的基本定义 254
4.8.2 取得对象信息:toString() 255
4.8.3 对象比较:equals() 256
4.8.4 Object类与引用数据类型 257
4.8.5 修改链表 259
4.9 综合练习:宠物商店 264
4.10 匿名内部类 269
4.11 基本数据类型的包装类 270
4.11.1 装箱与拆箱操作 271
4.11.2 数据类型转换 274
本章小结 277
课后习题 278
第5章 包及访问控制权限 282
(视频89分钟,例题22个,提示8个,注意2个,问答2个,技术穿越1个,面试题1个)
5.1 包的定义 282
5.2 包的导入 283
5.3 系统常见包 287
5.4 jar命令 288
5.5 访问控制权限 289
5.6 命名规范 291
5.7 单例设计模式(Singleton) 291
5.8 多例设计模式 295
本章小结 297
课后习题 297
第6章 异常的捕获及处理 298
(视频83分钟,例题18个,提示5个,注意1个,问答4个,技术穿越2个,面试题2个)
6.1 认识异常 299
6.2 处理异常 300
6.3 异常的处理流程 304
6.4 throws关键字 308
6.5 throw关键字 309
6.6 异常处理的标准格式 310
6.7 RuntimeException类 312
6.8 assert关键字 313
6.9 自定义异常 314
本章小结 315
课后习题 315
第7章 Eclipse开发工具 317
(视频75分钟,例题5个,提示6个,注意1个)
7.1 Eclipse简介 317
7.2 JDT的使用 319
7.3 JUnit的使用 329
本章小结 331
第8章 Java新特性 332
(视频175分钟,例题56个,提示13个,注意1个,问答2个,技术穿越5个,面试题1个)
8.1 可变参数 333
8.2 foreach循环 335
8.3 静态导入 335
8.4 泛型 337
8.4.1 泛型的引出 337
8.4.2 通配符 342
8.4.3 泛型接口 346
8.4.4 泛型方法 347
8.5 枚举 348
8.5.1 认识枚举 348
8.5.2 定义其他结构 351
8.5.3 枚举的实际作用 354
8.6 Annotation 356
8.6.1 准确的覆写:@Override 357
8.6.2 声明过期操作:@Deprecated 358
8.6.3 压制警告:@Suppress Warnings 359
8.7 接口定义加强 359
8.8 Lambda表达式 361
8.9 方法引用 365
8.10 内建函数式接口 368
本章小结 370
课后习题 371
第三部分 Java高级编程
第9章 多线程 373
(视频167分钟,例题24个,提示10个,注意2个,问答2个,技术穿越1个,面试题6个)
9.1 线程与进程 373
9.2 多线程实现 374
9.2.1 继承Thread类 374
9.2.2 实现Runnable接口 377
9.2.3 多线程两种实现方式的区别 378
9.2.4 利用Callable接口实现多线程 382
9.2.5 线程的操作状态 384
9.3 多线程常用操作方法 385
9.3.1 线程的命名与取得 385
9.3.2 线程的休眠 387
9.3.3 线程优先级 388
9.4 线程的同步与死锁 390
9.4.1 同步问题的引出 390
9.4.2 同步操作 392
9.4.3 死锁 395
9.5 线程间的经典操作案例——生产者与消费者案例 397
9.5.1 问题的引出 397
9.5.2 解决数据错乱问题 399
9.5.3 解决数据重复问题 401
9.6 线程的生命周期 403
本章小结 405
课后习题 405
第10章 Java常用类库 407
(视频364分钟,例题60个,提示25个,注意6个,问答8个,技术穿越2个,面试题4个)
10.1 StringBuffer类 407
10.2 Runtime类 412
10.3 System类 416
10.4 对象克隆 419
10.5 数字操作类 420
10.5.1 Math类 420
10.5.2 Random类 421
10.5.3 大数字操作类 423
10.6 日期处理类 425
10.6.1 Date类 426
10.6.2 日期格式化:SimpleDateFormat 427
10.6.3 Calendar类 429
10.7 比较器 430
10.7.1 Arrays类 430
10.7.2 比较器:Comparable 432
10.7.3 数据结构——BinaryTree 434
10.7.4 挽救的比较器:Comparator 437
10.8 正则表达式 440
10.8.1 问题引出 440
10.8.2 正则标记 442
10.8.3 String类对正则的支持 443
10.8.4 java.util.regex包支持 447
10.9 反射机制 449
10.9.1 认识反射 449
10.9.2 Class类对象实例化 450
10.9.3 反射实例化对象 451
10.9.4 使用反射调用构造 454
10.9.5 反射调用方法 457
10.9.6 反射调用成员 459
10.10 国际化 461
10.10.1 使用Locale类定义语言环境 462
10.10.2 利用ResourceBundle读取资源文件 463
10.10.3 多资源读取 465
本章小结 466
课后习题 467
第11章 Java IO编程 469
(视频307分钟,例题42个,提示27个,注意2个,问答4个,技术穿越4个)
11.1 文件操作类:File 469
11.2 字节流与字符流 474
11.2.1 字节输出流:OutputStream 475
11.2.2 字节输入流:InputStream 479
11.2.3 字符输出流:Writer 484
11.2.4 字符输入流:Reader 486
11.2.5 字节流与字符流的区别 488
11.3 转换流 489
11.4 案例:文件复制 491
11.5 字符编码 493
11.6 内存流 495
11.7 打印流 498
11.7.1 打印流设计思想 499
11.7.2 打印流 501
11.7.3 PrintStream类的改进 502
11.8 System类对IO的支持 503
11.8.1 错误输出:System.err 504
11.8.2 信息输出:System.out 505
11.8.3 系统输入:System.in 506
11.9 字符缓冲流:BufferedReader 508
11.10 扫描流:Scanner 511
11.11 对象序列化 514
11.11.1 序列化接口:Serializable 515
11.11.2 实现序列化与反序列化 515
11.11.3 transient关键字 517
本章小结 518
课后习题 519
第12章 Java网络编程 521
(视频43分钟,例题5个,提示1个,技术穿越1个)
12.1 网络编程 521
12.2 开发第一个网络程序 522
12.3 网络开发的经典模型——Echo程序 524
本章小结 527
课后习题 528
第13章 Java类集框架 529
(视频204分钟,例题34个,提示15个,注意3个,问答3个,技术穿越2个,面试题5个)
13.1 类集框架简介 529
13.2 单对象保存父接口:Collection 530
13.3 List子接口 531
13.3.1 新的子类:ArrayList 532
13.3.2 旧的子类:Vector 535
13.4 Set子接口 536
13.4.1 关于数据排序的说明 537
13.4.2 关于重复元素的说明 539
13.5 集合输出 541
13.5.1 迭代输出:Iterator 541
13.5.2 双向迭代:ListIterator 544
13.5.3 foreach输出 545
13.5.4 Enumeration输出 546
13.6 偶对象保存:Map接口 547
13.6.1 利用Iterator输出Map集合 550
13.6.2 自定义Map集合的key类型 551
13.7 Stack子类 553
13.8 Properties子类 554
13.9 Collections工具类 556
13.10 数据流 557
13.10.1 数据流基础操作 557
13.10.2 MapReduce 564
本章小结 567
课后习题 568
第14章 Java数据库编程 569
(视频121分钟,例题15个,提示3个,注意3个)
14.1 JDBC简介 569
14.2 连接Oracle数据库 570
14.3 Statement接口 572
14.3.1 数据更新操作 573
14.3.2 数据查询 576
14.4 PreparedStatement接口 578
14.4.1 Statement接口问题 578
14.4.2 PreparedStatement操作 579
14.5 批处理与事务处理 585
本章小结 587
课后习题 587
第四部分 设计开发
第15章 DAO设计模式 590
(视频163分钟,例题11个,提示10个,技术穿越1个)
15.1 程序设计分层 590
15.2 实例分析 592
15.3 项目准备 593
15.3.1 数据库连接类 594
15.3.2 开发Value Object 596
15.4 开发数据层 598
15.4.1 开发数据层操作标准 598
15.4.2 数据层实现类 601
15.4.3 定义数据层工厂类——DAOFactory 605
15.5 开发业务层 606
15.5.1 开发业务层标准——IEmpService 606
15.5.2 业务层实现类 609
15.5.3 定义业务层工厂类——ServiceFactory 612
15.6 代码测试 613
15.6.1 调用测试 613
15.6.2 利用JUnit进行测试 614
本章小结 617
附录 综合测试 618
测试试卷一 618
测试试卷二 623
测试试卷三 631
《Java编程实战:从入门到精通》 踏上您的Java开发之旅,让代码成为您创造未来的翅膀! 如果您渴望掌握一门强大而通用的编程语言,为您的职业生涯注入新的活力,或者希望将脑海中的奇思妙想转化为实际的应用程序,那么《Java编程实战:从入门到精通》将是您不二的选择。这本书不仅仅是一本技术手册,它更是一份详尽的学习路线图,一位经验丰富的导师,旨在引导您循序渐进地深入理解Java的核心概念、精湛的开发技巧以及在实际项目中的应用。 为什么选择Java? Java,作为全球最流行、应用最广泛的编程语言之一,其“一次编写,到处运行”的跨平台特性,使其在企业级应用、Android开发、大数据技术、Web后端开发等众多领域占据着举足轻重的地位。掌握Java,意味着您将拥有打开无数职业机遇大门的钥匙,无论是加入大型互联网公司,还是投身创业潮,亦或是成为一名独立的开发者,Java都将是您坚实的后盾。 本书的目标读者: 编程零基础的初学者: 不必担心,本书将从最基础的编程概念讲起,用通俗易懂的语言和生动的例子,带您领略编程的魅力。 有其他语言基础的开发者: 如果您已经掌握了某种编程语言,本书将帮助您快速理解Java的语法特性、面向对象思想以及Java生态系统的独特之处。 希望系统学习Java的在校学生: 结合课堂学习,本书将提供更深入的实践指导和项目经验,助您在学业上更进一步。 寻求职业转型的技术人员: 如果您希望进入Java开发领域,本书将为您构建起扎实的知识体系,让您自信地迎接新的挑战。 对软件开发充满好奇心的爱好者: 无论您的最终目标是什么,本书都将为您开启一段充满发现和创造的编程旅程。 本书特色与亮点: 《Java编程实战:从入门到精通》以其“深度与广度并存,理论与实践结合”的独特优势,致力于为您提供一种全面而高效的学习体验。 1. 严谨的理论体系,清晰的知识脉络: 本书从Java语言的根基——Java基础语法开始,逐一讲解变量、数据类型、运算符、流程控制语句(if-else, switch, for, while)等。在此基础上,深入剖析面向对象编程(OOP)的核心思想,包括类、对象、封装、继承、多态,并结合大量贴近现实的例子,帮助您深刻理解其精髓。我们将详细讲解抽象类、接口、内部类、异常处理机制,以及Java内存模型、垃圾回收等底层机制,让您知其然,更知其所以然。 2. 丰富的实战案例,由浅入深的项目驱动: 理论学习固然重要,但编程的精髓在于实践。本书精心设计了多个贯穿全书的实战项目,这些项目难度循序渐进,涵盖了从简单的命令行工具到更复杂的桌面应用和Web应用后端。您将有机会亲手构建: 学生信息管理系统: 练习面向对象设计、数据持久化(文件读写)以及基本的UI交互。 简单的图书管理系统: 进一步掌握集合框架、异常处理,并初步接触数据库操作。 在线商城后端框架模拟: 学习HTTP协议、Servlet/JSP(或其他现代Web框架基础概念)以及RESTful API设计思想。 多线程并发应用: 体验线程的创建、同步与通信,解决实际开发中的性能瓶颈。 网络通信程序: 理解TCP/IP协议,实现客户端/服务器端通信。 每一个项目都将详细分解需求,指导您完成代码编写、调试和优化,让您在解决实际问题的过程中,巩固所学知识,提升编程能力。 3. 现代Java技术的全面覆盖: 随着Java的不断发展,涌现出许多强大的新特性和生态工具。本书不仅关注Java SE的核心内容,还将为您介绍: Java集合框架(Collections Framework): 深入学习List, Set, Map等接口及其常用实现类,理解它们的特性和应用场景,掌握高效的数据存储与检索技巧。 Java I/O流: 掌握文件操作、字节流、字符流,以及NIO(New I/O)等高级IO技术,实现高效的数据传输。 多线程与并发编程: 学习Thread, Runnable接口,理解锁机制(synchronized, Lock),并发集合,以及ExecutorService等,为构建高性能、高并发的应用程序打下基础。 Java网络编程: 学习Socket编程,实现TCP和UDP通信,构建网络应用。 JDBC(Java Database Connectivity): 掌握与各种关系型数据库(如MySQL, PostgreSQL)进行交互的标准方式,实现数据持久化。 Lambda表达式与Stream API(Java 8+): 学习函数式编程的思想,以及如何利用Lambda和Stream API进行简洁高效的数据处理,大幅提升代码的可读性和性能。 Maven/Gradle构建工具: 了解项目依赖管理和构建流程,这是现代Java开发不可或缺的工具。 Git版本控制: 学习使用Git进行代码的版本管理和团队协作,这是现代软件开发的基本技能。 4. 深入浅出的讲解风格,化繁为简的技巧: 本书的讲解风格力求通俗易懂,循序渐进。我们反对照本宣科,而是通过大量的图示、代码片段、类比和实际场景,将抽象的概念形象化。对于容易混淆或难以理解的知识点,我们将提供多种角度的解释和解决方案。本书还提炼了许多实用编程技巧和开发“坑”规避指南,帮助您少走弯路,高效成长。 5. 良好的编程习惯与工程思维培养: 本书不仅教授技术,更注重培养读者的良好的编程习惯,如代码规范、注释风格、命名约定等。同时,您将在实践项目中体验到软件工程的基本流程,学习如何进行需求分析、模块设计、代码调试和单元测试,为未来从事更复杂的项目开发奠定基础。 本书结构概览: 本书的章节安排经过精心设计,力求逻辑清晰,层层递进: 第一部分:Java的基石——认识Java与基础语法 Java概述:历史、特点、JVM、JDK、JRE 搭建开发环境:Eclipse/IntelliJ IDEA配置 变量、数据类型、运算符 流程控制:条件语句、循环语句、跳转语句 方法:定义、调用、重载、递归 第二部分:面向对象的魔法——核心概念与深入理解 类与对象:属性、行为、构造器 封装:访问修饰符、getter/setter 继承:父类、子类、super关键字、方法重写 多态:向上转型、向下转型、动态绑定 抽象类与接口:抽象方法、默认方法、接口实现 内部类与匿名类:作用与应用 异常处理:try-catch-finally, throw, throws 第三部分:Java的强大工具箱——集合、IO与并发 Java集合框架:List, Set, Map的原理与应用 泛型:类型安全与代码复用 Java IO流:字节流、字符流、缓冲流、对象流 NIO:通道、缓冲区、选择器 多线程基础:线程创建、生命周期、同步机制 并发编程进阶:线程池、锁、原子操作 第四部分:Java进阶与现代实践 Java网络编程:Socket、ServerSocket JDBC:数据库连接与操作 Lambda表达式与函数式接口 Stream API:数据流式处理 反射:动态加载与操作类 注解:元数据与自定义注解 Maven/Gradle:项目构建与依赖管理 Git:版本控制与团队协作 第五部分:实战项目演练(贯穿全书,或在特定章节后独立成篇) 多个难度递增的实战项目,引导读者将所学知识应用于实际开发。 您的学习旅程: 阅读《Java编程实战:从入门到精通》将是一段充满挑战与乐趣的旅程。我们鼓励您: 勤于思考: 在阅读理论知识时,多问“为什么”,理解背后的设计理念。 动手实践: 务必跟着书中的代码示例进行实际敲击、运行和调试。 勇于尝试: 在完成示例后,尝试修改代码,加入自己的想法,看看会发生什么。 解决问题: 遇到困难时,不要轻易放弃,尝试查阅资料、利用调试工具,并从错误中学习。 构建项目: 完成书中的实战项目,并尝试自己构思和实现一些小型项目。 持续学习: 技术发展日新月异,本书为您打下坚实基础,后续请保持对新技术的关注。 结语: 《Java编程实战:从入门到精通》不仅仅是一本书,更是您迈向Java开发世界的一份承诺。无论您是怀揣梦想的初学者,还是渴望提升技能的开发者,本书都将是您最得力的伙伴。让我们一起,用代码编织属于您的精彩世界!现在就开始您的Java学习之旅吧!