专栏名称: java那些事
分享java开发中常用的技术,分享软件开发中各种新技术的应用方法。每天推送java技术相关或者互联网相关文章。关注“java那些事”,让自己做一个潮流的java技术人!《java程序员由笨鸟到菜鸟》系列文章火热更新中。
目录
相关文章推荐
芋道源码  ·  高性能、无侵入的 Java 性能监控神器 ·  18 小时前  
芋道源码  ·  Java面试,问八股文的面试官水平很次? ·  18 小时前  
芋道源码  ·  别乱分层,PO、VO、DAO、BO、DTO、 ... ·  昨天  
芋道源码  ·  抱歉,最近我劝各位真的别轻易离职...... ·  昨天  
芋道源码  ·  一款轻便、安全、免费的远程桌面工具 ·  2 天前  
51好读  ›  专栏  ›  java那些事

Java面试知识点总结

java那些事  · 公众号  · Java  · 2016-12-30 16:22

正文

请到「今天看啥」查看全文


5. hashCode的作用是什么?

请参见 散列表的基本原理与实现

6. ArrayList, LinkedList, Vector的区别是什么?

7. String, StringBuilder, StringBuffer的区别是什么?

8. Map, Set, List, Queue、Stack的特点及用法。

更详细的说明请参考官方文档,对相关数据结构不太熟悉的同学可以参考《 算法 导论》或其他相关书籍。

9. HashMap和HashTable的区别

更加详细的分析请参考 深入解析HashMap、HashTable

10. HashMap的实现原理

简单的说,HashMap的底层实现是“基于拉链法的散列表”。详细分析请参考 深入解析HashMap、HashTable

11. ConcurrentHashMap的实现原理

ConcurrentHashMap是支持并发读写的HashMap,它的特点是读取数据时无需加锁,写数据时可以保证加锁粒度尽可能的小。由于其内部采用“分段存储”,只需对要进行写操作的数据所在的“段”进行加锁。关于ConcurrentHashMap底层实现的详细分析请参考 Java并发编程:并发容器之ConcurrentHashMap

12. TreeMap, LinkedHashMap, HashMap的区别是什么?

更加详细的说明请参考 HashMap,LinkedMap,TreeMap的区别

13. Collection与Collections的区别是什么?

Collection 是Java集合框架中的基本接口;Collections是Java集合框架提供的一个工具类,其中包含了大量用于操作或返回集合的静态方法。

对Java集合框架还不太熟悉的小伙伴请参考 Java核心技术点之集合框架

14. 对于“try-catch-finally”,若try语句块中包含“return”语句,finally语句块会执行吗?

答案是会执行。只有两种情况finally块中的语句不会被执行:

15. Java中的异常层次结构

Java中的异常层次结构如下图所示:

我们可以看到Throwable类是异常层级中的基类。Error类表示内部错误,这类错误使我们无法控制的;Exception表示异常,RuntimeException及其子类属于未检查异常,这类异常包括ArrayIndexOutOfBoundsException、NullPointerException等,我们应该通过条件判断等方式语句避免未检查异常的发生。IOException及其子类属于已检查异常,编译器会检查我们是否为所有可能抛出的已检查异常提供了异常处理器,若没有则会报错。对于未检查异常,我们无需捕获(当然Java也允许我们捕获,但我们应该做的事避免未检查异常的发生)。







请到「今天看啥」查看全文