java实施工程师面试都问什么?java面试常问问题以及答案

想要进行java行业,首先就要通过java面试这关,只要是应聘java相关职位,我们多少都需要了解java知识点,那java实施工程师面试都问什么?下面来我们就来给大家讲解一下。

java实施工程师面试都问什么.jpg

1、在 Spring 中如何配置 Bean ?

Bean 的配置方式: 通过全类名(反射)、通过工厂方法(静态工厂方法 & 实 例工厂方法)、FactoryBean。

2、讲下MyBatis的缓存

MyBatis的缓存分为一级缓存和二级缓存,一级缓存放在session里面,默认就有,二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现Serializable序列化接口(可用来保存对象的状态),可在它的映射文件中配置。

3、mybatis的优缺点?

优点:SQL写在XML中,便于统一管理和优化,提供映射标签,支持对象和数据库的orm字段关系映射,可以对SQL进行优化。

缺点: SQL工作量大,mybagtis移植姓不好,不支持级联。

4、String 属于基础的数据类型吗?

String 不属于基础类型,基础类型有 8 种:byte、boolean、char、short、int、float、long、double,而 String 属于对象。

5、什么是线程安全?Vector是一个线程安全类吗?

如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量 的值也和预期的是一样的,就是线程安全的。一个线程安全的计数器类的同一个实例对象在被多个线程使用的情况下也不会出现计算失误。很显然你可以将集合类分 成两组,线程安全和非线程安全的。Vector 是用同步方法来实现线程安全的, 而和它相似的ArrayList不是线程安全的。

6、什么是不可变对象?好处是什么?

不可变对象指对象一旦被创建,状态就不能再改变,任何修改都会创建一个新的对象,如 String、Integer及其它包装类.不可变对象最大的好处是线程安全。

7、能否创建一个包含可变对象的不可变对象?

当然可以,比如final Person[] persons = new Persion[]{}.persons是不可变对象的引用,但其数组中的Person实例却是可变的.这种情况下需要特别谨慎,不要共享可变对象的引用.这种情况下,如果数据需要变化时,就返回原对象的一个拷贝。

8、你平时在项目中是怎样对异常进行处理的?

(1)尽量避免出现runtimeException 。例如对于可能出现空指针的代码,带使用对象之前一定要判断一下该对象是否为空,必要的时候对runtimeException也进行try catch处理。

(2)进行try catch处理的时候要在catch代码块中对异常信息进行记录,通过调用异常类的相关方法获取到异常的相关信息,返回到web端,不仅要给用户良好的用户体验,也要能帮助程序员良好的定位异常出现的位置及原因。例如,以前做的一个项目,程序遇到异常页面会显示一个图片告诉用户哪些操作导致程序出现了什么异常,同时图片上有一个按钮用来点击展示异常的详细信息给程序员看的。

其实java面试一般问的都是基础问题,目的就是为了了解对java基础掌握的是否牢固,因为只要我们将java基础学好,就会顺利通过java面试!最后大家如果想要了解更多Java面试题知识,敬请关注奇Q工具网。

推荐阅读:

我的世界java版怎么导入存档?我的世界java版卡怎么办?

哪些工具可以打开json文档?怎样解析json数据?

git版本控制的原理是什么?git版本控制的原理讲解