道客优

1234
2019年Android面试必备
2019-03-13 刀刻油 阅读:1036

这些面试题是我在今年年初换工作的时候整理,没有重点。包括java基础,数据结构,网络,Android相关等等。适合中高级工程师。由于内容过多,将会分为上下两部分。http://www.cnblogs.com/huangjialin/p/8657696.html

答案https://xiaozhuanlan.com/topic/1493506827

 

1java==equalshashCode的区别 

2intinteger的区别 

3StringStringBufferStringBuilder区别 

4、什么是内部类?内部类的作用

5、进程和线程的区别 

6finalfinallyfinalize的区别 

7Serializable Parcelable 的区别 

8、静态属性和静态方法是否可以被继承?是否可以被重写?以及原因? 

9、成员内部类、静态内部类、局部内部类和匿名内部类的理解,以及项目中的应用 

10string 转换成 integer的方式及原理

11、哪些情况下的对象会被垃圾回收机制处理掉? 

12、静态代理和动态代理的区别,什么场景使用? 

14Java中实现多态的机制是什么? 

16、说说你对Java反射的理解 

17、说说你对Java注解的理解 

18JavaString的了解 

19String为什么要设计成不可变的? 

20Object类的equalhashCode方法重写,为什么?

21List,Set,Map的区别 

22ArrayMapHashMap的对比 

23HashMapHashTable的区别 

24HashMapHashSet的区别 

25HashSetHashMap怎么判断集合元素重复? 

26ArrayListLinkedList的区别,以及应用场景 

27、数组和链表的区别 

28、开启线程的三种方式? 

29、线程和进程的区别? 

30run()start()方法区别 

31、如何控制某个方法允许并发访问线程的个数?

32、在Javawaitseelp方法的不同; 

33、谈谈wait/notify关键字的理解 

43、什么导致线程阻塞?线程如何关闭?

35、如何保证线程安全?

36、如何实现线程同步? 

37、线程间操作List 

38、谈谈对Synchronized关键字,类锁,方法锁,重入锁的理解 

39synchronized volatile 关键字的区别 

40ReentrantLock synchronizedvolatile比较 

41、死锁的四个必要条件? 

42、什么是线程池,如何使用?

43Java中堆和栈有什么不同?

44、有三个线程T1T2T3,怎么确保它们按顺序执行?

45、AsyncTask的工作原理

46、Binder的工作机制

47、view的事件分发和view的工作原理

48、Android中性能优化

49、加密算法(base64MD5、对称加密和非对称加密)和使用场景。

50、HashMap的实现原理:


推荐阅读: