面试题

简介

最近由于在找工作,然后期间也遇到了许多的面试和笔试题,下面总结一下,希望可以帮助到一些朋友吧。

问题

Android

1.Handler机制原理,大致的说一下?有没有更加深入的了解源码?
2.自定义View的流程?
3.Android进程间的通信,线程间的通信?
4.简述一下事件分发,项目中是否有用到,如何解决?
5.谈谈Activity的生命周期?
6.Activity的几种启动模式,使用场景?
7.RecycleView加载图片异位是如何解决的?
8.RecycleView的优化?
9.MVP、MVC、MVVM的区别,你项目中使用哪种?
10.大概说一下Android5.0到Android9.0各个版本的特性,然后在开发中解决了哪些难题?
11.谈谈你对动画的了解,项目中有使用到吗?
12.Activity生命周期A跳转到B执行的生命周期是怎么样的?为什么要这么设计呢?
13.平时使用的这些框架有没有去深入的看一下源码?看过哪个就说一下?
14.自定义View和ViewGroup的区别,默认的方式在源码中你是否去看过?
15.什么是内存溢出、内存泄漏,项目中是怎么解决的?
16.谈谈你对service服务的理解,项目中是否用到?
17.线程和进程的区别?谈谈你对他们的了解?
18.谈谈你对线程死锁的理解?
19.谈谈你对Android四大组件的理解?简要概括
20.View的绘制流程?
21.invalidate和postInvalidate区别?使用场景
22.WebView如何解决内存泄漏?
23.WebView与中的Android怎么跟js交互呢?
24.Android横竖屏切换的生命周期?

25.四大组件分别是什么,简单介绍下
26.广播的种类,和注册方式的区别
27.service的类型和启动方式
28.listview的优化,和recyclerview的区别,recyclerview的分析,为什么用recyclerview?
29.动画的种类,属性动画怎么做的,怎么平移动画等
30.handler,非子线程能否更新ui
31.图片加载怎么设计,不用框架的话,加载原理是啥,图片过大怎么处理,方法?
32.怎么做下拉刷新和上拉加载
33.scrollview和lisitview一起用的话你会怎么用
34.网络请求你用什么框架
35.picacosa和fesco还有glide源码分析,原理,和区别,为什么用glide
36.如果父布局是300X300 要放400X400的textview怎么实现
37.设置大小的单位 除了dp和sp还有啥
38.如果屏幕放了一张图片,怎么计算图片的内存
39.怎么计算图片的尺寸大小
40.如果没有适配的工具去生成对应的dp的话,你会怎么做
41.imgview设置图片的话setBg和setImageResouse的区别是什么
42.fragment的生命周期
43.从activityA跳转到B的生命周期变化和又回到A的变化
44.怎么解决内存溢出

Java

1.String 、StringBuffer、StringBuild区别?
2.HashMap和HashTable区别?源码有没有看过?
3.Vector,ArrayList和LinkedList区别?使用场景?
4.Http和https的区别?
5.谈谈你对JVM的理解?如果从Person p=new Person()这个实例的说说大致的流程?
6.TCP和UDP的区别?使用场景?
7.抽象类和接口的区别?
8.谈谈你对内部类的理解?在什么情况下你需要内部类?
9.final finally finalize区别?
10.volatile的理解?
11.什么是线程安全?如何才能使线程安全?
12.Java 重写(Override)与重载(Overload)区别?

总结

  • 答案后期会整理...
  • 题目持续更新...