首页 / 面试 / java面试2020及答案(第二弹)
java面试2020及答案(第二弹)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java面试2020及答案(第二弹),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2870字,纯文字阅读大概需要5分钟。
内容图文
![java面试2020及答案(第二弹)](/upload/InfoBanner/zyjiaocheng/631/6fa84bfccb0249b48e991b613e9e2022.jpg)
最新java面试基础总结。如果有用欢迎点赞加评论。
- 重写和重载的区别
方法的重载和重写都是实现多态的方式。重载实现的是编译时的多态性,重写实现的是运行时的多态性。
重载发生在一个类中,同名的方法如果有不同的参数列表则视为重载;
重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的参数列表,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常。 - gc机制
gc:即垃圾收集, 是指 JVM 用于释放那些不再使用的对象所占用的内存。在系统运行过程中,会产生一些无用的对象,这些对象占据着一定的内存,如果不对这些对象清理回收无用对象的内存,可能会导致内存的耗尽,所以垃圾回收机制回收的是内存。同时gc回收的是堆区和方法区的内存。当要进行垃圾回收时候,不管何种GC算法,除了垃圾回收的线程之外其他任何线程都将停止运行。垃圾回收机制有很多种,包括:分代复制垃圾回收、标记垃圾回收、增量垃圾回收等方式。 - SpringMVC如何实现后台校验(校验前台传过来的值是否合法)
引入hibernate 校验框架的jar包。
在实体类中增加要校验属性的注解。
在控制层的处理器方法中增加模型参数的注解和BindingResult参数。 - @RequestBody注解的作用是什么
一般情况下常用其处理application/json类型。通过@requestBody可以将请求体中的JSON字符串绑定到相应的bean上,也可以将其分别绑定到对应的字符串上。 - Spring中如何全局捕获异常
①: @ControllerAdvice,@ExceptionHander()
创建一个全局异常类,类上添加@ControllerAdvice和@ResponseBody返回json参数。也可以单独使用@RestControllerAdvice。且spring会扫描到此注解,所以无需配置注入bean。在方法上添加@ExceptionHander(value = “需拦截异常的class”),可以单独拦截某一个异常,也可以全拦截Excepiton。
②:在父类的baseController方法上加上@ExceptionHander()此方法与方法①类似,区别在于@ExcptionHander所在的类不一样。这个是在一个基类controller方法添加。缺点在于每个controller必需继承基类baseController。 - Spring mvc中如何注入properties文件的参数
通过context:property-placeholde实现配置文件加载。
通过util:properties实现配置文件加载。
直接在Java类中通过注解实现配置文件加载。 - mybatis中 # { }和 $ { } 的区别是什么?
①#{ }是预编译处理, $ { }是字符串替换。
②mybatis在处理#{ }时,会将sql中的#{ }替换为?号,调用PreparedStatement的set方法来赋值;mybatis在处理$ { }时,就是把$ { }替换成变量的值。
③使用#{ }可以有效的防止SQL注入,提高系统安全性。 - Mybatis动态sql有什么用?有哪些动态sql?
Mybatis 动态 sql 可以在 Xml 映射文件内,以标签的形式编写动态 sql,执行原理是根据表达式的值 完成逻辑判断并动态拼接 sql 的功能。
Mybatis 提供了 9 种动态 sql 标签:trim 、 where 、set 、 foreach 、 if |、choose、 when 、 otherwise 、 bind。 - 什么是跨域问题?SpringBoot中如何解决跨域问题?
跨域是指 不同域名之间相互访问。跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。
通过实现WebMvcConfigurer接口,然后重写addCorsMappings方法解决跨域问题。一个http请求,先走filter,到达servlet后才进行拦截器的处理,如果我们把cors放在filter里,就可以优先于权限拦截器执行。 - 构造器(constructor)是否可被重写(override)?
构造器不能被继承,因此不能被重写,但可以被重载。
内容总结
以上是互联网集市为您收集整理的java面试2020及答案(第二弹)全部内容,希望文章能够帮你解决java面试2020及答案(第二弹)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。