【冲刺秋招,许愿offer】第 二 天

【冲刺秋招,许愿offer】第 二 天

知识点

  • final不可变性的原理
    可见性:当一个共享变量被声明为final时,每个线程都能看到这个变量的最新值。这是因为final变量的读取操作会直接从主内存中获取值,而不是从线程的工作内存中。这样,即使多个线程同时访问这个变量,也能保证它们看到的是同一个值。
    有序性:使用final可以防止指令重排序。JVM会在写入final变量时插入一个写屏障,确保当一个线程将值赋给final变量后,其他线程能看到这个变量的最新值,而不是看到变量未初始化之前的默认值。
    以上都可以保证final修饰的变量能被正确的初始化和赋值。
    如果以后线程想获取该变量的值,其实是对该值的拷贝,或者是从常量池的拷贝,并不是直接使用该变量的引用。

牛客

  1. 索引底层原理

mysql索引是使用B+树的数据结构,是一颗多叉树,非叶子节点只存放指针,叶子节点存放真正的数据,叶子节点之间又使用双向链表,那么只有叶子节点存放数据这就保证的查询效率的稳定性,减少磁盘IO,使用链表又方便进行范围查询。

  1. 索引失效情况

没有遵循最左前缀法则
对索引列进行计算
字符踹类型没加’',会类型转化为int,也会失效
模糊匹配在前,比如 like ‘%xxx’
大于或者小于号会使索引失效,尽量使用大于等于
等等还有好多,我认为说这些可以啦

  1. 什么是回表查询

如何你根据某一字段索引进行查找,而该索引不是主键索引,他找到的叶子节点里面保存的数据只有主键值和该列值,如果你还查询了其他的列,那么他就会拿到这个主键,再去主键索引里查找出全部行数据,这样又回去查询了一次,就叫做回表查询。

每天emo

JUC真的听的云里雾里的,尤其是什么读屏障、写屏障,volatile原理、final的不可见性、等等,感觉被面试官一问就会尬住。。

小tips

以后晚上早点去跑步,睡不着了

相关推荐

  1. 冲刺许愿offer第 二

    2024-06-10 08:22:03       8 阅读
  2. 器件转行验证,offer25-50w上岸!

    2024-06-10 08:22:03       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-10 08:22:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-10 08:22:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-10 08:22:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-10 08:22:03       18 阅读

热门阅读

  1. React antd 怎么封装枚举字典组件

    2024-06-10 08:22:03       10 阅读
  2. 常用的国内外公共DNS服务

    2024-06-10 08:22:03       8 阅读
  3. JVM详解

    JVM详解

    2024-06-10 08:22:03      8 阅读
  4. OJ3829大石头的搬运工

    2024-06-10 08:22:03       8 阅读
  5. QML键盘事件的用法和示例

    2024-06-10 08:22:03       7 阅读