3.1面试更新

3.1续更:
  昨天的面试很有意思,x云科技的技术面让我意识到还需要去多学一点东西,会在后续总结出来。
  还有一家公司,电话过来本来要面试的,我和他说了一下最近收到的offer情况,hr小姐姐说,可能面上了也不会去他们公司,然后就挂了,就挺尴尬的。
  下面来说一下昨天面试遇到比较有意思的,后续面试遇到的问题会补充到我的资料里,大家在网盘里重新下载资料即可。
  x云科技面的比较全:百分之90都在总结的资料里,刚开始问j提了一嘴String能不能被继承(不行,final修饰),后面问锁(lock和synchronize),之后问jvm的区块划分(栈、堆),1.7和1.8的栈空间区别,后续就开始有点意思的了。
  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);
            }
        }

3、mysql,sql语句优化,sql索引巴拉巴拉巴拉,然后开始问你MyISAM和InnoDB的区别?这个他说是附加题把,答不上来也没事,我就说了三个:一般面试答三个就够了,多了可能你想不起来也尴尬
  (1)、InnoDB行锁和表锁都支持!MyISAM只支持表锁!
  (2)、InnoDB支持事务,MyISAM不支持
  (3)、MyISAM允许在一个进程读表的同时,另一个进程从表尾插入记录。但是InnoDB存储引擎是不支持的!
  
当天电话
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值