![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试core
文章平均质量分 66
毕富国
这个作者很懒,什么都没留下…
展开
-
java中创建对象的5种方式
java中创建对象的5种方式作为Java开发者,我们每天创建很多对象,但我们通常使用依赖管理系统,比如Spring去创建对象。然而这里有很多创建对象的方法,我们会在这篇文章中学到。Java中有5种创建对象的方式,下面给出它们的例子还有它们的字节码使用new关键字 } → 调用了构造函数 使用Class类的newInstance方法 } → 调用了构造函数 使用Con...原创 2018-10-18 23:49:05 · 294 阅读 · 0 评论 -
synchronized和lock的区别;悲观锁和乐观锁的区别
synchronized和lock的区别: 1.用法不一样。synchronized既可以加在方法上,也可以加载特定的代码块上,括号中表示需要锁的对象。而Lock需要显示地指定起始位置和终止位置。synchronzied是托管给jvm执行的,Lock锁定是通过代码实现的。 2.在性能上来说,如果竞争资源不激烈,两者的性能是差不多的,而当竞争资源非常激烈时(即有大量线程同时竞争),此时Lock...原创 2018-10-20 10:35:22 · 8991 阅读 · 0 评论 -
线程面试
编写多线程程序一般有三种方法,Thread,Runnable,Callable1、Runnable和Callable的区别:(1)Callable规定的方法是call(),Runnable规定的方法是run().(2)Callable的任务执行后可返回值,而Runnable的任务是不能返回值得(3)call方法可以抛出异常,run方法不可以(4)运行Callable任务可以拿到一...原创 2018-10-20 12:59:34 · 200 阅读 · 0 评论 -
缓存,你真的用对了么?缓存误用
缓存,是互联网分层架构中,非常重要的一个部分,通常用它来降低数据库压力,提升系统整体性能,缩短访问时间。有架构师说“缓存是万金油,哪里有问题,加个缓存,就能优化”,缓存的滥用,可能会导致一些错误用法。缓存,你真的用对了么?误用一:把缓存作为服务与服务之间传递数据的媒介如上图: 服务1和服务2约定好key和value,通过缓存传递数据 服务1将数...原创 2019-08-20 11:21:02 · 287 阅读 · 0 评论 -
选redis还是memcache,源码怎么说?
memcache和redis是互联网分层架构中,最常用的KV缓存。不少同学在选型的时候会纠结,到底是选择memcache还是redis。画外音:不鼓励粗暴的实践,例如“memcache提供的功能是redis提供的功能的子集,不用想太多,选redis准没错”。虽然redis比memcache更晚出来,且功能确实也更丰富,但对于一个技术人,了解“所以然”恐怕比“选择谁”更重要一些。...原创 2019-08-20 11:21:58 · 192 阅读 · 0 评论