一面(2024/3/5)52min
- 自我介绍
- 聊实习,实习的主要工作是什么?
- 聊项目,手机上有这个项目吗?展示一下
- 说一下MVP模式
- 说一下MVVM模式的set()和get()是怎么实现的,数据的绑定是通过什么实现的?当时没有get到要问啥,现在想想应该是要问DataBinding和ViewBinding
- 说一下抽象类和接口的区别?抽象类和接口可以有方法体吗?Java可以多实现或者多继承吗?
- 如何保证线程安全?
- ArrayList和LinkedList的区别?LinkedList的链表是单链表还是双链表?双向链表
- HashMap和HashTable的区别?
- HashMap的底层实现?哈希冲突如何解决?
- 说一说你熟悉的几个设计模式?
- 单例模式的分类?
- 写一个双重校验锁
- 写一个冒泡排序
- JVM的内存划分?
- String s1="1"; String s2=new String();这两个字符串创建所存在的位置
- ==和equals的区别?
- 深拷贝和浅拷贝的区别?
- 说一说Kotlin的扩展函数?扩展函数的原理是什么?
- 垃圾回收算法都有哪些?年轻代和老年代所用的算法的区别?
- 讲一讲Handler机制?Looper是线程唯一的吗?主线程的Looper的创建时机?ActivityThread的main()方法
- 现在push一个延迟消息到消息队列里,这时候忽然退出应用程序了,会有什么问题?
- 如何解决内存泄漏?
- View的事件分发机制?解决过滑动冲突吗?自定义过View吗?如何实现的?
- 触发invalidate()和requestLayout()会发生什么?
- 现在需要设置RecyclerView的每个item都不一样如何实现?
- TCP和UDP的区别?可以多连接吗?
- HTTP和HTTPS的区别?对称加密和非对称加密?说一些常见网络错误码?
反问:
- 部门技术栈?Kotlin语言为主,有一套自己设计的架构
- 面试官您觉得我还有哪方面的不足吗?
- 这个岗位是日常还是暑期转正实习?
- 面试一共有几面?至少还有一轮技术面
总结:第一次遇到这么多八股的面试,在面试的时候就感觉问的好多,整理面经发现真的好多,2024年的首面,发挥的不是很好,有些八股没遇到过,还有实习不是写业务的,有些业务问题感觉说的不是很好,那道业务的场景题也没答上来。