4.27 字节搜索客户端日常实习一面

1.自我介绍
2.你说你熟悉Java,Java和c++区别?
3.你刚刚说Java没有指针,指针是什么?通过Java引用能够直接操作内存吗?
4.什么是多态?JVM层面是如何实现多态的?
5.用过哪些Java容器,是怎么扩容的?用过ArrayList吗?底层结构是什么样的?Object数组存进去的都是Object对象,为什么取出来的时候是特定类型的对象?
6.Java如何进行垃圾回收?那有没有一种情况,出现了一块内存,分配后从来不被使用,但是GC永远回收不到?(:生命周期不匹配,在一个函数内部new了一个static对象)
7.什么是内存泄漏?OOM出现的情况?有没有办法在项目上线之前发现内存泄漏的现象?
8.ThreadLocal是什么?ThreadLocalMap是线程独有的吗?key和value是什么?为什么要用ThreadLocal?和局部变量有什么区别?线程中new出一个对象分配在哪?(答:堆上分配,返回给线程该对象的引用)那这样其他线程不就能访问到这个对象了吗?(答:只有该线程知道对象的引用。...已经麻了,不知道自己在说啥了)不应该分配在线程自己独有的内存空间里吗?(我:?JMM有描述线程有自己的工作内存,但那好像是对寄存器、CPU缓存的抽象,我记得线程除了方法栈、本地方法栈、程序计数器私有外,就只有堆是共享的了啊...不知道面试官想说的是不是TLAB,已经绷不住了)
9.多线程了解吗?停止线程的方法?(我把线程池的shutdown方法和线程的interrupt记混了,面试官质疑多次)
10.写代码。3个线程交替打印1到100。(写了个死锁,面试官一块找bug,找了半天说应该没问题啊,然后改成两个,顺利打印,说自己回去再看吧,并对我丑陋的代码表示质疑,道心破碎)
11.要设计一款聊天软件,你打算采用什么方案?(之前做过websocket的聊天室,就答拟用websocket协议)websocket协议相比较于http、https有什么优势?除了服务器能主动发送消息还有吗?如何保证信息加密呢?(答:自己处理)那这样你和https相比优势又在哪呢?使用http3如何实现服务端向客户端主动发送消息?如何保证消息可靠性和顺序性?
12.要设计一款视频聊天软件,采用什么方案...(问题同上)
13.反问
今早发现挂了,纯搞心态,道心破碎#面经##字节实习生#
全部评论
面了多久
1 回复 分享
发布于 2023-04-28 16:42 江苏
麻,乍一看都会,但感觉回答会不够全面和细致,加油xd
点赞 回复 分享
发布于 2023-04-28 13:16 广东
点赞 回复 分享
发布于 2023-07-07 23:37 江苏

相关推荐

评论
6
33
分享
牛客网
牛客企业服务