面试踩坑,持续更新

1、数据库的左连接就是左边的表全保留,右边的表不同的部分全去除。
2、数据库的右连接就是右边的表全保留,左边的表不同的部分全去除。
3、外连接、全连接:将两个表重叠的字段取一次,剩下的部分字段合成一个新表。
4、string类可以被继承吗?不能,因为String 类被final修饰
5、面对对象的三个特征:继承,封装,多态(很鸡儿尴尬,因为新年玩太久了2333,面试官一问突然懵了)
6、类加载过程:加载->验证->准备->解析->初始化->使用->卸载(同上,很尴尬反正 )
7、ACID(原子性《通过bin log和undo log实现》,隔离性,一致性,持久性《redo log》)
8、查询语句是否使用索引,使用expalin语句,只要不是all就用到了索引。
9、@controller帮我们做了什么 过程详解

3.1续更:
  昨天的面试很有意思,x云科技的技术面让我意识到还需要去多学一点东西,会在后续总结出来。
  还有一家公司,电话过来本来要面试的,我和他说了一下最近收到的offer情况,hr小姐姐说,可能面上了也不会去他们公司,然后就挂了,就挺尴尬的。
  下面来说一下昨天面试遇到比较有意思的,后续面试遇到的问题会补充到我的资料里,大家在网盘里重新下载资料即可。
  1、前面巴拉巴拉巴拉一堆ioc和aop的常见问题,然后问Springboot的自动注入如果是两个类互相自动注入会出现问题吗?
  新版本或当前版本不会,因为bean的生命周期里已经提前把bean的依赖关系和bean初始化完毕了,不会形成一个循环new对象的过程。但是如果你是自己new的对象去调用就会出现死循环也就会报错。在这里插入图片描述
  2、照样前面巴拉巴拉巴拉一堆hashmap的常见问题,然后问完扩容,问我hashmap什么时候红黑树会退化回链表结构,这里我特意找了一下源码:
  大意就是当hashmap的红黑树节点数小于等于6的时候,会将红黑树转换回链表,为什么不选用7呢,因为数据很容易因为各种原因添加和删除,如果一直卡在8和7的话,数据结构一直变换,系统消耗会很大,所以源码规定了6为一个分界点。

static final int UNTREEIFY_THRESHOLD = 6;

 if (loHead != null) {
            // 如果loHead不为空,且链表长度小于等于 6,则将红黑树转成链表
            if (lc <= UNTREEIFY_THRESHOLD)
                tab[index] = loHead.untreeify(map);
            else {
                tab[index] = loHead;
                
                //hiHead == null 时,表明扩容后,所有节点仍在原位置,树结构不变,无需重新树化
                if (hiHead != null)
                    loHead.treeify(tab);
            }
        }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值