java基础篇整理

1、List 和 Set 的区别
我们为什么要使用List和Set(List,Set详解)

2、HashSet 是如何保证不重复的
HashSet 是借助 HashMap来实现的,利用的HashMap中Key的唯一性,来 保证HashSet中不存在重复值。
HashSet类是如何实现添加元素保证不重复的—哈希码的原理

3、HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?
HashMap为什么线程不安全

①多个线程某一时刻同时操作HashMap并执行put,hash值同,需解决 冲突。
②put()方法不是同步的
③addEntry()方法不是同步的
④resize()扩容方法不是同步的

补充:
面试总结hashmap

4、HashMap 的扩容过程

5、HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?
6、final finally finalize
7、强引用 、软引用、 弱引用、虚引用
《JVM虚拟机》
强引用:Object obj = new Object();只要强引用存在,垃圾回收器就永远不会回收掉被引用的对象。jvm宁愿抛出OutOfMemory异常也不会去回收该对象
软引用:有用但不是必需的对象。对于软引用关联的对象,系统发生内存溢出异常之前,会把这些对象列入回收范围中进行二次回收,如果回收后还是没有足够内存,就会抛出内存溢出的异常。SoftReference
弱引用:描述非必需对象,只不过更弱了。只能生存到下次垃圾收集发生之前。一旦垃圾收集开始工作,不管内存是否充足,都会回收掉只被弱引用关联的对象。WeakReference
虚引用:最弱的。不影响对象的生命周期。该对象在被回收时收到一个系统通知。RhantomReference。
参考博客:
Java 的强引用、弱引用、软引用、虚引用

8、Java反射
SpringIOC控制反转使用了工厂+反射
9、Arrays.sort 实现原理和 Collection.sort 实现原理
Collections.sort()和Arrays.sort()排序算法选择
Arrays.sort和Collections.sort实现原理解析

1、Arrays.sort() 
该算法是一个经过调优的快速排序,此算法在很多数据集上提供N*log(N)的性能,这导致其他快速排序会降低二次型性能。 
2、Collections.sort() 
该算法是一个经过修改的合并排序算法(其中,如果低子列表中的最高元素效益高子列表中的最低元素,则忽略合并)。此算法可提供保证的N*log(N)的性能,此实现将指定列表转储到一个数组中,然后再对数组进行排序,在重置数组中相应位置处每个元素的列表上进行迭代。这避免了由于试图原地对链接列表进行排序而产生的n2 log(n)性能。 

来自 <https://blog.csdn.net/yemou_blog/article/details/50292287> 

还是不太明白

10、LinkedHashMap的应用
11、cloneable接口实现原理
12、异常分类以及处理机制
13、wait和sleep的区别
14、数组在内存中如何分配

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值