java基础4

一面:
1,自我介绍。
2,面试官,问:你会什么?,我:Java。面试官:你说说Java运行时区域。我:balabalabala说完。
3,内存模型
4,虚拟机
5,插一句:面试官让我说说数据结构,我直接介绍 查找算法,面试官懵了。他说:我是问你数据结构比如:堆栈什么的。我恍然大悟,估计当时是有点紧张了。
6,介绍线程和进程的区别。这个回忆下当时我考研得时候复习的内容。重点问题是:分析下线程是存储在哪个地方。当时我也是懵了,经过自己现场的推断的得出结论是:栈里。回去查了下,好像对了。
7,怎么判断一个链表有环。这个刷过题的都知道了。
8,怎么达到同步:介绍下voliate,cycleBarrier.countlauntch 等等,。
9,Voliate原理。
https://blog.csdn.net/Hollake/article/details/90606260?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3
10 ,了解下项目的知识:SpringMvc原理什么的。
12,ArrayList,HashMap,等基础问题,也是被问的,这都没啥好说的了。

二面:
1,自我介绍–这次的自我介绍我可是准备好了的。从公司我二楼走到一楼都没说完。
2,项目介绍–重点介绍我之前和队友参加的一个京东的算法比赛。介绍完了,之后,我就说自己对机器学习并不是特别深入理解,只能说是了解。-----当时差点就说了,自己是抱大腿的。
3,上一个一样,会什么啊?Java。又来了
4,快排描述,时间复杂度,是否稳定—答案是:我测过啊。当时都笑了。
5,同步,还是同步,线程的问题,这个很重要。。。一直被问。
6,线程池的问题–这次一点都不慌了。当听到这个问题,我是真的笑了。
7,在线程同步上估计说了20分钟(一共 55分钟)
8,介绍对机器学习的理解。比如:卷积神经网络,坦诚的说:没具体的用过,只是 做个小demo,识别下小图片而已。理由是:电脑配置差。
然后又问我 RNN 。我直接说,我不懂RNN,我只懂CNN,现在想想也是好笑。很无奈啊
9,怎么在一亿个数里找出前几名数字:我首先说的是桶排序:因为再大的数字位数也是有限的。。最后才知道,他想让我利用 散列表搞定。
10,其他的问题,我也不怎么记起来了。大概总共能时间就是 55分钟。

介绍下Java的集合框架。

ArrayList和LinkedList有什么区别?
ArrayList扩容时做了什么操作?
扩容时是在数组的后面加的吗还是?

HashMap的数据结构是什么?
HashMap的put操作是怎么实现的?
HashMap是线程安全的吗?

ConcurrentHashMap熟悉吗?
用的1.4还是1.8的?
ConcurrentHashMap是怎么保证线程安全的?

线程的创建方式?
启动线程直接用run方法吗?
介绍下线程的几个状态。
调用Object.wait会进入哪个状态?

线程池用过吗?
线程池的类型以及线程池每个参数的作用。
假设核心参数是5,最大线程数是10,什么时候会达到10?

Unsafe类实现CAS?
直接使用Unsafe会有什么问题吗?

说一下juc.lock包

介绍一下AQS
没有获取锁会做什么事情?

CopyOnWriteArrayList有了解吗?
用了什么思想?
写的时候能读吗,读会阻塞吗?
ThreadLocal模式出现内存泄露吗?

JVM有了解吗?
介绍一下JVM的运行时数据区域。

分代收集器有了解吗?
什么时候对象会进入老年代?

垃圾回收器一般有哪几种?
平时用的是哪个收集器?

说一下常用的设计模式?

单例模式一般怎么实现?
你这种用内部类实现的方式有什么好处?

代理模式怎么实现?
AOP是怎么实现的?
AspectJ底层是怎么实现的?
你用ASM框架做了什么啥?
cglib了解吗?

介绍下类加载机制?
介绍下双亲委派模式?
怎么自己写一个java.lang.Object?

学了数据库吗?
索引有几种类型?
Innodb用的什么索引?
b+树有什么特点?
它是有序的吗?
b+树是二叉树吗?

红黑树有什么特点?
为什么查询效率高?
是绝对平衡的吗?
AVL树知道吗?
AVL和红黑树有什么区别?
二三树的3代表黑还是红?
二三树转变成红黑树的过程?

你写过脚本语言,解析过SQL语句吗?

平时都看什么书吗?
RPC框架听说过吗?

谈一下Java后端编译优化。
Java分层编译,0、1、2、3、4是啥?
方法内联,分支预测。
如果通过JIT日志分析出来没有优化,怎么在代码中体现?
什么时候会进行内联优化?
介绍一下虚方法表。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值