java面试大全面试题06

1.数组怎么初始化的?

静态初始化:

  1. 直接赋值进行相关的初始化,数组元素有多少,就有多长。
    String[] str1={‘name’,‘hou’,‘zhi’};
    动态初始化:
  2. 通过进行数组的长度的固定
    String[] str2=new String[6];

2.方法重载和重写的区别?

重载:

  1. 方法名称 必须相同
  2. 仅仅返回类型不同不可以构成重载
  3. 参数类型,参数个数,参数的排列顺序不同
  4. 方法的重载发生在编译时;根据参数类型的个数进行识别是否重载。

重写
5. 发生在父类和子类当中
6. 参数类型和参数个数,返回值也需要一样
7. 子类方法的访问权限不可以低于父类方法的访问权限

3.类中的初始化的先后顺序?

静态属性初始化---》静态方法初始化
-----》普通属性初始化-----》普通方法初始化。

4. SpringBoot中的properties文件和yml文件的优先级?

properties>yml文件,会先执行properties文件

5.SpringBoot中的@SpringBootApplication注解怎么看待的?(SpringBoot的约定大于配置)

它是一个复合的注解:
包括**@ComponentScan @SpringApplication @EnableConfiguration**

6.SpringBoot用的json转换的工具是?

fastjson jackson都可以用来处理json转换,从速度上面来看JackSon处理果json数据的速度会更快一些,但是fastJson会比jackson数据容易上手一些。

7.SpringBoot中的获取前端的值的方法?

  1. 直接从url进行?追加参数获取
  2. HttpServletRequest进行相关的获取
  3. 直接和前端的参数name一致可以获取,比如(String username,String password)
  4. Bean获取就是直接通过一个对象(User user)获取
  5. @RequestParam进行获取
  6. @PathVariable进行相关的获取(适用于Get请求)
  7. @ModelAttribute(“user” User user)获取
  8. @RequestBody绑定请求方法到参数进行获取

8.什么是缓存穿透?

缓存查询一个没有的 key,同时数据库也没有,如果黑客大量的使用这种方式,那么就会导致 DB 宕机。

我们可以使用一个默认值来防止,在缓存里放一个占位符,下次来的时候,检查这个占位符,如果发生时占位符,就不去数据库查询了,防止 DB 宕机。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有时间指导毕业设计

觉得写的好的话可以给我打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值