加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营 > 正文

各大公司Java后端开发面试题总结

发布时间:2020-12-31 15:31:19 所属栏目:运营 来源:网络整理
导读:ThreadLocal(线程变量副本)Synchronized实现内存共享,ThreadLocal为每个线程维护一个当地变量。回收空间换时刻,它用于线程间的数据断绝,为每一个行使该变量的线程提供一个副本,每个线程都可以独立地改变本身的副本,而不会和其他线程的副本斗嘴。ThreadL

Hibernate的一级缓存是由Session提供的,因此它只存在于Session的生命周期中,当措施挪用save(),update(),saveOrUpdate()等要领 及挪用查询接口list,filter,iterate时,如Session缓存中还不存在响应的工具,Hibernate会把该工具插手到一级缓存中,当Session封锁的时辰缓存也会消散。

Hibernate的一级缓存是Session所内置的,不能被卸载,也不能举办任何设置一级缓存回收的是key-value的Map方法来实现的,在缓存实体工具时,工具的首要害字ID是Map的key,实体工具就是对应的值。

Hibernate二级缓存:把得到的全部数据工具按照ID放入到第二级缓存中。Hibernate二级缓存计策,是针对付ID查询的缓存计策,删除、更新、增进数据的时辰,同时更新缓存。

历程和线程的区别:

历程:每个历程都有独立的代码和数据空间(历程上下文),历程间的切换会有较大的开销,一个历程包括1–n个线程。

线程:统一类线程共享代码和数据空间,每个线程有独立的运行栈和措施计数器(PC),线程切换开销小。

线程和历程一样分为五个阶段:建设、停当、运行、阻塞、终止。

多历程是指操纵体系能同时运行多个使命(措施)。

多线程是指在统一措施中有多个次序流在执行。

在java中要想实现多线程,有三种本领,一种是继承Thread类,其它一种是实现Runable接口,尚有就是实现Callable接口。


Switch可否用string做参数?

a.在 Java 7 之前,switch 只能支持byte,short,char,int 可能其对应的封装类以及 Enum 范例。在Java 7中,String 支持被加上了。


Object有哪些公用要领?

a.要领equals测试的是两个工具是否相称

b.要领clone举办工具拷贝

c.要领getClass返回和当前工具相干的Class工具

d.要领notify,notifyall,wait都是用来对给定工具举办线程同步的


Java的四种引用,强弱软虚,以及用到的场景

a.操作软引用和弱引用办理OOM题目:用一个HashMap来生涯图片的路径和响应图片工具关联的软引用之间的映射相关,在内存不敷时,JVM会自动接纳这些缓存图片工具所占用的空间,从而有用地停止了OOM的题目。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读