本书归纳了Java学习者、工作者在工作和面试中最容易遭遇的技术短板和算法基础,本书把Java编程中的要点、难点和Java程序员必备的算法基础知识收集在一起,旨在帮助读者有针对性地提高这些看似“司空见惯”的基本功。本书内容分为四个部分,其中第一部分主要介绍Java内存管理,这部分是大多数Java程序员最容易忽略的地方——因为Java不像C语言,而且Java提供了垃圾回收机制,因此导致许多Java程序员对内存管理重视不够;第二部分主要介绍Java编程过程中各种常见的陷阱,这些陷阱有的来自李刚老师早年的痛苦经历,有的来自他的众多学生的痛苦经历,都是Java程序员在编程过程中的“前车之鉴”,希望读者能引以为戒;第三部分主要介绍学习Java必备的算法基础知识,包括常用数据结构的各种算法实现,这部分内容是大多数Java程序员重视不够的地方,也是大厂面试的常考面试题;第四部分主要介绍Java程序开发的方法、经验等,它们是李刚老师多年的实际开发经验、培训经验的总结,符合初学者的习惯,更能满足初学者的需要,因此掌握这些开发方法、经验可以更有效地进行开发。本书提供了微信交流群(通过扫描本书封面上的二维码可加入),读者在阅读本书过程中遇到技术问题可通过该微信群与李刚老师进行交流,也可与疯狂Java体系图书庞大的读者群进行交流。本书不是一本包含所有技术细节的手册,而是承载了无数过来人的谆谆教导的宝典,书中内容为有一定Java基础的读者而编写,尤其适合有一到三年的Java学习经验的读者和参加工作一年以上的初级Java程序员阅读,希望能够帮助他们突破Java基本功的瓶颈。


作者

李刚,

十余年软件开发从业经验,疯狂软件教育中心教学总监。疯狂Java实训营创始人,疯狂Java体系原创图书作者。CSDN特邀讲师。培训的学生已在腾讯、阿里、华为、IBM、网易等名企就职。国内知名高端IT技术图书作家,已出版《疯狂Java讲义》《疯狂Python讲义》《疯狂Android讲义》《轻量级Java EE企业应用实战》《疯狂前端开发讲义》《疯狂HTML 5/CSS 3/JavaScript讲义》《疯狂iOS讲义(基础篇)》《疯狂iOS讲义(提高篇)》《疯狂XML讲义》《经典Java EE企业应用实战》等著作。其中疯狂Java体系图书均已沉淀多年,赢得极高的市场认同,多次重印,多部著作印刷数量超过10万册,并被多所“985”“211”院校选作教材,部分图书已被翻译成繁体中文版,授权到中国台湾地区。


查看全部
目录

作者简介

内容简介

前言

第1章 数组及其内存管理

引言

1.1 数组初始化

1.2 使用数组

1.3 本章小结

第2章 对象及其内存管理

引言

2.1 实例变量和类变量

2.2 父类构造器

2.3 父、子实例的内存控制

2.4 final修饰符

2.5 本章小结

第3章 常见Java集合的实现细节

引言

3.1 Set和Map

3.2 Map和List

3.3 ArrayList和LinkedList

3.4 Iterator迭代器

3.5 本章小结

第4章 Java的内存回收

引言

4.1 Java引用的种类

4.2 Java的内存泄漏

4.3 垃圾回收机制

4.4 内存管理小技巧

4.5 本章小结

第5章 表达式中的陷阱

引言

5.1 关于字符串的陷阱

5.2 表达式类型的陷阱

5.3 输入法导致的陷阱

5.4 注释字符必须合法

5.5 转义字符的陷阱

5.6 泛型可能引起的错误

5.7 正则表达式的陷阱

5.8 多线程的陷阱

5.9 本章小结

第6章 流程控制的陷阱

引言

6.1 switch语句的陷阱

6.2 标签引起的陷阱

6.3 if语句的陷阱

6.4 循环体的花括号

6.5 for循环的陷阱

6.6 foreach循环的循环计数器

6.7 流式编程的陷阱

6.8 本章小结

第7章 面向对象的陷阱

引言

7.1 instanceof运算符的陷阱

7.2 构造器的陷阱

7.3 持有当前类的实例

7.4 到底调用哪个重载的方法

7.5 方法重写的陷阱

7.6 非静态内部类的陷阱

7.7 static关键字

7.8 native方法的陷阱

7.9 本章小结

第8章 异常处理的陷阱

引言

8.1 正确关闭资源的方式

8.2 finally块的陷阱

8.3 catch块的用法

8.4 继承得到的异常

8.5 本章小结

第9章 线性表

引言

9.1 线性表概述

9.2 顺序存储结构

9.3 链式存储结构

9.4 线性表的分析

9.5 本章小结

第10章 栈和队列

引言

10.1 栈

10.2 队列

10.3 双端队列

10.4 本章小结

第11章 树和二叉树

引言

11.1 树的概述

11.2 二叉树

11.3 遍历二叉树

11.4 转换方法

11.5 哈夫曼树

11.6 排序二叉树

11.7 红黑树

11.8 本章小结

第12章 常见的内部排序

引言

12.1 排序的基本概念

12.2 选择排序法

12.3 交换排序

12.4 插入排序

12.5 归并排序

12.6 桶式排序

12.7 基数排序

12.8 本章小结

第13章 程序开发经验谈

引言

13.1 扎实的基本功

13.2 程序开发之前

13.3 厘清程序的实现流程

13.4 编写开发文档

13.5 编码实现和开发心态

13.6 本章小结

第14章 程序调试经验谈

引言

14.1 程序的可调试性

14.2 程序调试的基本方法

14.3 记录常见错误

14.4 程序调试的整体思路

14.5 调试心态

14.6 本章小结

第15章 IDE工具心法谈

引言

15.1 何时开始利用IDE工具

15.2 IDE工具概述

15.3 项目管理

15.4 代码管理

15.5 项目调试

15.6 团队协作功能

15.7 本章小结

第16章 软件测试经验谈

引言

16.1 软件测试概述

16.2 单元测试

16.3 系统测试和自动化测试

16.4 性能测试

16.5 本章小结

查看全部
书评
查看更多
请您登录后发表评论 登录 | 注册
我的评分:
提交
0/400