《Java高级程序员面试笔试宝典》PDF电子书免费下载

作者:  猿媛之家 蔡羽 楚秦 等

出版社: 机械工业出版社

出版年: 2019年11月

ISBN: 9787111641186

~~滚到底部有网盘下载链接~~

内容简介

目录

前言
部分 Java特性
第1章 重视基础知识2
1.1 不可变类2
1.2 “= =”、equals与hashcode4
1.3 值传递与引用传递6
1.4 Java关键字8
1.4.1 static8
1.4.2 final9
1.4.3 transient10
1.4.4 volatile10
第2章 再论面向对象12
2.1 继承12
2.1.1 多重继承12
2.1.2 Overload与Override14
2.2 反射15
2.3 嵌套类20
第3章 泛型22
3.1 基本概念22
3.1.1 泛型的分类23
3.1.2 有界泛型24
3.1.3 复杂的泛型27
3.1.4 数组和泛型容器28
3.1.5 泛型使用建议30
3.2 泛型擦除31
3.2.1 泛型信息的擦除31
3.2.2 擦除带来的问题33
3.2.3 编译器保留的泛型信息35
3.2.4 反射获取泛型信息37
3.2.5 Java泛型的历史39

第4章 Java新特性41
4.1 Java 8新特性41
4.1.1 Lambda表达式41
4.1.2 方法的默认实现和静态方法42
4.1.3 方法引用43
4.1.4 注解(Annotation)45
4.1.5 类型推测45
4.1.6 参数名字45
4.1.7 新增Optional类46
4.1.8 新增Stream类46
4.1.9 日期新特性48
4.1.10 调用JavaScript50
4.1.11 Base6450
4.1.12 并行数组50
4.2 Java 9新特性51
4.2.1 JShell:交互式Java REPL51
4.2.2 不可变集合工厂方法51
4.2.3 私有接口方法52
4.2.4 平台级模块系统53
4.2.5 进程 API的改进58
4.2.6 try-with-resources59
4.2.7 Stream API的改进60
第二部分 JDK内部实现原理分析
第5章 Collection框架63
5.1 List64
5.1.1 ArrayList64
5.1.2 LinkedList71
5.1.3 Vector和Stack73
5.1.4 总结74
5.2 Queue74
5.3 Map81
5.3.1 HashMap81
5.3.2 Java 8之前的HashMap82
5.3.3 Java 8提供的HashMap90
5.3.4 TreeMap101
5.3.5 Java 8之前的LinkedHashMap102
5.3.6 Java 8里的LinkedHashMap103
5.3.7 Hashtable106
5.3.8 WeakHashMap106
5.4 Set110
5.4.1 HashSet110
5.4.2 LinkedHashSet112
5.4.3 TreeSet113
第6章 JUC框架115
6.1 AQS队列同步器115
6.1.1 AQS的同步状态关键字116
6.1.2 volatile关键字117
6.1.3 AQS和CAS121
6.1.4 AQS的等待队列122
6.1.5 AQS如何阻塞线程和中断阻塞130
6.1.6 sun.misc.Unsafe131
6.2 ReentrantLock重入锁131
6.2.1 ReentrantLock的公平锁与非公平锁实现132
6.2.2 ReentrantLock的重入性135
6.2.3 ReentrantLock和synchronized138
6.2.4 ReentrantLock的条件监视器142
6.3 BlockingQueue145
6.3.1 ArrayBlockingQueue147
6.3.2 LinkedBlockingQueue153
6.3.3 PriorityBlockingQueue159
6.3.4 ConcurrentLinkedQueue164
6.3.5 DelayQueue172
6.4 Executor框架集175
6.4.1 Executor接口175
6.4.2 ExecutorService176
6.4.3 ThreadPoolExecutor177
6.4.4 FixedThreadPool、CachedThreadPool和SingleThreadExecutor190
6.4.5 Future和FutureTask193
6.5 Latch198
6.6 Barrier200
6.6.1 利用重入锁ReentrantLock和条件监视器Condition实现Barrier201
6.6.2 利用Generation对象实现回归性202
6.6.3 利用Generation对象和Interrupt提供break功能203
6.6.4 为Barrier指定超时205
6.6.5 Barrier的回调和回调的异常处理206
6.7 同步(wait¬ify)206
6.8 ThreadLocal209
6.8.1 使用实例209
6.8.2 原理解析211
6.8.3 Java 8新特性212
6.9 其他JUC类213
6.9.1 ConcurrentHashMap213
6.9.2 CopyOnWriteArrayList219
第7章 Java IO221
7.1 IO相关基础概念221
7.2 同步与异步、阻塞与非阻塞221
7.3 BIO222
7.4 NIO223
7.4.1 Buffer224
7.4.2 Channel226
7.4.3 Selector229
7.4.4 AIO234
第三部分 JVM
第8章 内存分配241
8.1 JVM内存划分241
8.2 运行时内存划分243
8.2.1 年轻代、老年代与永久代243
8.2.2 String.intern()244
8.2.3 原空间MetaSpace249
8.3 垃圾回收250
8.3.1 垃圾回收算法251
8.3.2 串行垃圾回收253
8.3.3 并行垃圾回收253
8.3.4 并发标记清理回收器254
8.3.5 G1256
第9章 代码的执行259
9.1 类加载259
9.1.1 双亲委托模型259
9.1.2 线程上下文类加载器262
9.2 代理模式265
9.2.1 静态模式265
9.2.2 动态代理269
9.2.3 CGLIB271
9.3 Java代码的执行273
9.3.1 Java字节码273
9.3.2 变量的执行275
9.3.3 条件语句的执行281
9.3.4 循环语句的执行289
9.3.5 泛型擦除的类型转换290
第10章 设计模式292
10.1 单例模式292
10.2 工厂模式292
10.3 适配器模式294
10.4 观察者模式295
附录(常见面试笔试题)296

显示部分信息

下载价格:免费
立即下载
登入/注册
知识就是力量
没有账号? 忘记密码?