百度Android提前批一面
时间:20:40 - 22:20
时间 100分钟,我碰到过的最长一次面试。而且面试过程中没做算法题,就是纯面,面到后面时面试官声音都沙哑了。
由于是Java转Android,大多数是Java相关
1.面向对象的三大特性,详细地说一下
2.hashmap知道的都说一下
3.单一职责,封闭与开放原则,依赖倒置说一下(我简历上没写会设计模式相关的,我真不会。。),以及其他的几个原则。我都不会但是还是在这里面了20分钟。面试官比较好,你不会的话面试官会慢慢给你讲,所以后面面试官声音沙了我没有。。。
4.http和https相关,他们的区别是什么,https是怎么做到安全的。端口必须是80和443吗
5.error和exception,exception的父类和子类有哪些,非运行时异常和运行时异常举个例子。
6.try catch finnally.如果都有return.那么情况是什么样的
7.数据结构中的堆栈讲一下
8.线程池的好处,常用的线程池
9.excutorservice和excutor
10.string stringbuilder stringbuffer说一下,三个的效率比较,stringbuffer怎么实现线程安全的
11.sychronized和lock的区别,说一下你知道的锁,lock的unlock是在哪里执行的
12.抽象类和接口
13.threadLocal说一下
14.Java的引用
15.object类的方法有哪些,详细说一下
16.深拷贝和浅拷贝
17.equals和hashcode.为什么重写equals时要重写hashcode. ==和equals的区别
18.volatile的特性,它的可见性是怎么实现的,Java的内存模型是什么
19.进程和线程的区别,看你学过kotlin.线程和协程有什么不同
20.四大组件说一下,其中你用过哪几个
21.Activity的生命周期,4种启动模式是什么,用的场景是什么
22.Service的两种启动方式,什么时候用Service.IntentService说一下
23.okhttp说一下(这里没用过)
24.四大组件有哪些可以跨组件通信,ipc是什么.AIDL说一下(我还是没用过。。。)
25.假如要让一个Activity对其他应用可见,要设置什么
26.listview和recyclerview的区别
27.自定义view
28.wait notify notifyall interrupted的使用场景
还有很多忘记了,等想起来补充,感觉不难但是多,如果理解错了的话面试官会说他对于这个的理解。面试体验极佳