记录一下体验非常不好的字节三面
今天字节客户端三面,面试官应该是leader,一上来就一副不感兴趣的脸。问了下面几个问题。
1、你擅长什么?答:安卓
2、sp和dp的区别,px为什么要转为dp
px没有固定的物理长度,如果用px作为设计单位,那么在屏幕像素密度(ppi)不同的情况下,图片显示的大小是不一样的。我们在1pt=1px的时候用1倍图,在1pt=2px的时候用两倍图,这样,在屏幕上显示图片的大小就一致了。
3、kotlin为什么要用内联函数
在kotlin中,因为出现了大量的高阶函数,每一个函数参数都会被编译成一个对象,使得内存分配(对于函数对象和类)和虚拟调用会增加运行时间的开销。所以才会出现inline内联函数。可以通过inline的标注,把原本需要生成的一个类的开销节省了,同时也少了一层方法栈的调用。调用内联函数的地方变成了内联函数的内部语句,如果内联函数中的函数类型使用了lambda表达式,则进一步内联lambda表达,将lambda表达式的函数体替换为调用lambda表达式的地方
4、apply是怎么实现的
这个问题查了网上的例子真的没看懂,有没有朋友教一下
5、子线程为什么不能更新UI
子线程可能会有多个,存在多个线程同时操作一个控件的情况
子线程可以在ViewRootImpl还没有创建之前更新UI的
访问UI是没有加对象锁的,在子线程环境下更新UI,会造成各种未知风险的
6、SharePreference用过吗,讲一下
SharedPreferences 是 Android 提供的数据持久化的一种手段,适合单进程、小批量的数据存储与访问
SharedPreferences的实现是基于单个xml文件实现的
commit()是线程安全的,但是性能慢,同步操作,在当前线程完成写文件操作。使用了synchronized关键字来保证其线程安全
apply()是线程不安全的,但是性能高,是异步处理IO操作。
7、两个瓶子从100层掉落,多少次知道哪层掉下会碎。
反正没几个会的,然后面试官一脸不耐烦,然后说原来你擅长的是java,你说你会安卓,但是刚才的情况安卓也不咋行。
然后也没问我java,就结束了,总共只有35分钟面试。。。。。
1、你擅长什么?答:安卓
2、sp和dp的区别,px为什么要转为dp
px没有固定的物理长度,如果用px作为设计单位,那么在屏幕像素密度(ppi)不同的情况下,图片显示的大小是不一样的。我们在1pt=1px的时候用1倍图,在1pt=2px的时候用两倍图,这样,在屏幕上显示图片的大小就一致了。
3、kotlin为什么要用内联函数
在kotlin中,因为出现了大量的高阶函数,每一个函数参数都会被编译成一个对象,使得内存分配(对于函数对象和类)和虚拟调用会增加运行时间的开销。所以才会出现inline内联函数。可以通过inline的标注,把原本需要生成的一个类的开销节省了,同时也少了一层方法栈的调用。调用内联函数的地方变成了内联函数的内部语句,如果内联函数中的函数类型使用了lambda表达式,则进一步内联lambda表达,将lambda表达式的函数体替换为调用lambda表达式的地方
4、apply是怎么实现的
这个问题查了网上的例子真的没看懂,有没有朋友教一下
5、子线程为什么不能更新UI
子线程可能会有多个,存在多个线程同时操作一个控件的情况
子线程可以在ViewRootImpl还没有创建之前更新UI的
访问UI是没有加对象锁的,在子线程环境下更新UI,会造成各种未知风险的
6、SharePreference用过吗,讲一下
SharedPreferences 是 Android 提供的数据持久化的一种手段,适合单进程、小批量的数据存储与访问
SharedPreferences的实现是基于单个xml文件实现的
commit()是线程安全的,但是性能慢,同步操作,在当前线程完成写文件操作。使用了synchronized关键字来保证其线程安全
apply()是线程不安全的,但是性能高,是异步处理IO操作。
7、两个瓶子从100层掉落,多少次知道哪层掉下会碎。
反正没几个会的,然后面试官一脸不耐烦,然后说原来你擅长的是java,你说你会安卓,但是刚才的情况安卓也不咋行。
然后也没问我java,就结束了,总共只有35分钟面试。。。。。
全部评论
挂了吗
我也是二面遇到了个一脸轻蔑的面试官 一直歪嘴笑 最后还给我挂了 早知道我当场开喷了
好难啊感觉
字节还是要求高的
,过不了就跳过
佬,没有过客户端开发经验,也会被问安卓吗
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享