刚面完字节,热乎。,HarmonyOS鸿蒙面试题目

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新HarmonyOS鸿蒙全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img

img
img
htt

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注鸿蒙)
img

正文

本人平时除了安卓外,还自学了 Python、Java 后端等技术,有一定的技术广度,并且能够独立完成较完整的项目,下面先分享一下这轮面试遇到的题目:

字节跳动Android实习生一面题目
  • 自我介绍
  • Java的四种引用
  • HTTPS的原理、握手过程
  • 多线程如何同步
  • synchronized和ReentrantLock的区别,你认为哪一种比较好,为什么
  • 有用过哪些设计模式
  • 如何理解依赖反转
  • 如何理解多态(这个翻车了)
  • 运行时多态/编译时多态(没看这部分…让面试官举了个例子,自己猜测了一下)
  • MVC MVP MVVM的区别
  • RxJava如何切换线程
  • 3个View:A B C,A包含B,B包含C,在onTouchEvent中,对于ACTION_DOWN,A C返回false,B返回ture,对于ACTION_UP,A C返回true,B返回false,问谁消费了ACTION_UP事件…(好像答得是A,面试官说答错了,不过分析流程的时候把事件分发机制讲明白了,蒙混过关)
  • 算法题:找出2个链表的第一个公共节点,要求空间复杂度O(1)

一面结束告诉我不要走,十五分钟之后二面开始
  • 上来就是算法题:两个线程如何让线程A等待线程B的运行结果:一开始想用join,后来尝试synchronized,但都存在问题,最后想到了自旋
  • 算法题:确定一个数组是不是二叉搜索树的后序遍历
  • 聊项目
  • Retrofit的实现原理
  • Retrofit所使用到的设计模式
  • 说一说观察者模式
  • 对LiveData监听的的onChange方法什么时候会被调用(这个一开始答偏了,说内部的引用改变才会调用,后来经过提示是生命周期相关)
  • 弹出一个Dialog,Activity中LiveData的onchange是否会调用
  • 不用第三方库,自己尝试读取Bitmap,需要注意哪些问题(内存溢出和LRUCache)
二面结束告诉我可以休息半小时,等会直接三面(此时脑子已经一片浆糊了…)
  • 聊项目
  • 为什么学Android
  • 怎么学Android
  • 怎么重构项目
  • 怎么提升自己
  • 算法题:36进制加法
  • 以后怎么打算的
  • 能实习多久

连续三轮面试,真的好累啊…

面试感受

大家可以看到,面经上的题都是比较常见的问题。在准备面试之前,我可能对这些知识只是有简单的了解,但是在准备面经的这几天,我刷了很多字节的面经,自己尝试着去回答一些问题,我觉得这几天刷面经的这个过程对我来说还是效率比较高的,刷面经也可以帮我快速明确自身有哪些不足的点。

本来还是挺自信的,结果最后,面试官却对我说:你的基础还是挺好的,但是算法不行。

雀氏是酱紫啊,我本身是没去系统地学习过数据结构和算法的。。。。。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java嵌入式面试题可能会涉及如下内容: 1. 请解释嵌入式系统是什么,以及它与普通计算机系统的区别是什么? 嵌入式系统是一种特殊的计算机系统,通常用于执行特定的任务。与普通计算机系统相比,嵌入式系统通常具有更高的实时性要求和更小的资源占用,可以集成在各种设备中。 2. 请解释Java嵌入式系统的特点及其在嵌入式领域的应用? Java嵌入式系统具有较小的内存占用,跨平台性好以及垃圾回收等特点。在嵌入式领域,Java可以用于开发智能手机应用、家用电器控制系统、汽车信息娱乐系统等。 3. 请描述嵌入式系统中的Java虚拟机(JVM)的工作原理? 在嵌入式系统中,JVM负责将Java源代码编译成字节码,然后在标硬件平台上解释执行或者进行即时编译。JVM还负责内存管理、线程调度和异常处理等工作。 4. 请谈谈嵌入式系统开发中的性能优化策略? 性能优化策略包括减小内存占用、精简代码量、减少不必要的计算、优化数据结构和算法等。此外,可以使用硬件加速、并行计算和异步处理等技术来提高系统的整体性能。 5. 请描述一下您在嵌入式系统开发中遇到的挑战,并如何解决它? 在嵌入式系统开发中,可能会遇到资源受限、实时性要求高、硬件环境复杂等挑战。解决方法包括优化代码结构、采用低功耗芯片、使用实时操作系统等。通过细致的需求分析和合理的系统设计,可以有效解决这些挑战。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值