总时间大约70min,其中算法写了差不多30min hh
面试时间:2024年3月(没错凉经)
部门:腾讯视频,技术栈为跨端kotlin(客户端技术栈每个公司每个部门都不太一样)
tips:本人为2024年投的实习生,可以说小白的时候就把面评烂糟了,现在看就是很后悔TvT不过还是发出来吧
自我介绍
巴拉巴拉,我说我对框架没那么了解,从事过很多的原生开发
项目细究
- 水表就是再小程序上看到是么?-没那么简单,跟他讲了项目不只是软件部分然后讲了还要硬件部分思密达
- 你做过终端开发,你做过安卓开发吗?-没有,只是会基础语法。面试官打圆场说“java不是你最强项最熟悉的那我们就聊聊鸿蒙吗”,
- 面试官比较好奇你的项目是运行再手机上的吗?用什么IDE,用
- 项目 开发鸿蒙遇到了什么困难。第一我们会的不多,发展很快,从mainAbility到arkui,我选择的是js。一个是组件不完善,一个是软硬件接口通信,我做应用软件要跟硬件底层通信,有NAPI和JSI框架,其次就是网络通信fetch和底层调用的区别。面试官大圆场“所以就是”
- 讲讲北向开发,鸿蒙三大特性(我简历里写了)
- 多端部署?是什么意思
- 讲了面试官鸿蒙的开发经历。问鸿蒙页面的生命周期。onShow onactivity。什么时候业务调用什么生命周期函数
- 鸿蒙的显示ui,ui可以多线程显示吗?做鸿蒙的时候有了解过线程吗?–我讲我没有特意的用,而是用做好的,比如异步调用setTimeInter
- 面试官告诉我用鸿蒙原生,成本太高了,你有了解跨端的框架吗?–flutter,taro(偏前端的),RN(react Native)
- **有了解Kotlin吗,回去学习一下!**他可以用
- 腾讯视频的跨端方向都是用Kotlin,如果不能跨端就
问点java基础吧,现在纯面向鸿蒙原生的太少了,现在对客户端开发的要求是什么都会。你对双端开发有兴趣吗?
- 我答“没兴趣也得有兴趣”
java的线程池是什么思想和原理。
-
讲了我的大作业,继承Threading类和重写runnable接口
-
我忘了线城池是啥了,所以面试官一直在引导我,比如你自己设计线程池
-
再说一个场景,我要规定一个核心(不超过5个),如果线程太多了,我要怎么管理—–核心就是队列
java里锁的概念
- synchroized关键字
- 锁(acquire和lock)lock可以锁对象
- 两个可以单独使用的,可以实现相同的效果。大部分synchroized可以实现需求
锁一个对象和锁一个类有什么区别?
- 答得一般,应该没答到点上
java里static关键字是什么?思想是什么?
- 答得一般,我说我了解过c++的静态关键字
实际开发中什么时候用static?
- 这里答的一般
写一个题吧,你能用java写吗?题目是全排列,DFS和回溯or递归的题
- 玩球,一点不会写
- 46. 全排列 - 力扣(LeetCode)