面试考察点
- 语言特性
- 常用类/方式使用
- 集合
- 机制
Part 1:语言特性
主要考察点包括:
- 面向对象的三个特征与含义
- 多态的实现原理
- 方法重写(Override)与方法重载(Overload)的介绍及其区别
- 接口(interface)与抽象类(abstract)的介绍及其区别
Part 2:常用类/方式使用
主要包括在实际使用Java时的一些常见使用类及方法介绍。主要包括:
- 基本数据类型、相关操作 及 封装类
- 常见四种引用及其应用场景(强、弱、软、虚)
- 字符串类型(String)相关使用方法
- Object类常用的公有方法
- 静态关键字的常见用法(Static)
- 不同情形下return和finally的执行顺序
- 关键字:transient、volatile
- 错误类型:Exception与Error包结构、OOM、SOF
- XML解析方式 & 与JSON对比
- 解决生产 & 消费者问题的5种实现
Part 3:集合
在Java中,集合的使用可谓是重中之重。考察内容主要包括:
- Collection相关:包结构、与Collections的区别、Collections与 Arrays 的区别
- List、Set、Queue、Stack、Map的特点与用法
- Vector、ArrayList、LinkedList的存储特性 & 区别
- Map相关:子类继承、HashMap 与 LinkedHashMap、TreeMap的区别、HashMap 与 Hashtable 的区别、HashMap 与 ConcurrentHashMap 的区别、HashMap的底层源码、HashCode作用
- HashMap 1.8 源码分析
- HashMap 1.7 源码分析
- BlockingQueue及其实现类
- CountDownLatch
关于上述Java集合的所有内容介绍,具体请看文章:Carson带你学Java:那些关于集合的知识都在这里了!
Part 4:机制
主要包括Java的常用机制:
- 多线程:实现多线程的基础方法-Thread与Runable
- 多线程:线程池ThreadPool 使用 & 原理
- 多线程:ThreadLocal的使用规则 & 源码分析
- 线程同步:sychronized、lock、reentrantLock
- 线程锁(方法锁-对象锁-类锁):https://github.com/Carson-Ho/AndroidLearning/blob/master/Material/Java/机制/线程同步:sychronized(含锁的等级)、lock、reentrantLock、CAS.md
- IO与NIO:定义、特点、应用场景及原理
- JNI:定义、特点、应用场景及原理
- 反射:定义、特点、应用场景及原理
- 泛型:特点、List能否转为List、与C 泛型区别
至此,关于面试指南中的Java语言篇讲解完毕。下面我会对面试内容继续进行讲解