crazyandcoder

2017年4月份杭州面试题

2017.06.03

关于人文方面的问题

  • 先介绍一下你自己?
  • 你有什么兴趣爱好?
  • 你平常空闲时间会干什么,看哪些书,有什么心得体会?
  • 如果面试过了的话,就会问你的期望薪资,然后就开始各种压榨你。

关于 Java 方面的问到的知识点

  • 面向对象的三大特性,如何理解其中的多态?
  • JVM 的内存模型?
  • String、StringBuilder、StringBuffer 的区别,StringBuffer 是如何实现线程安全的?
  • 了解过 HTTP 吗?说说它的特点,它里面有哪些方法,有了解过吗?知道 HTTPS 吗?这两者有什么区别?
  • 你平常是怎么进行加密的?MD5 加密是可逆的吗?
  • 接口与抽象类的区别?static 方法可以被覆盖吗?为什么?
  • 创建线程的方式,他们有什么区别?知道线程池吗?说说对线程池的理解?
  • 你了解过 Java 的四种引用吗?分别代表什么含义,他们有什么区别?
  • Java 中关于 equals 和 hashcode 的理解?
  • 关于 Java 中深拷贝和浅拷贝的区别?
  • 简单的说下 Java 的垃圾回收?
  • 了解过 Java 的集合吗?说说 HashMap 的底层实现原理?ArrayList 和 LinkedList 的区别?Java 集合中哪些是线程安全的?
  • 如何实现对象的排序?
  • 知道 ThreadLocal 吗?说说对它的理解?
  • 在你写代码的过程中有使用过设计模式吗?你知道哪些?为什么要这样用,能解决什么问题?
  • 了解注解吗?了解反射吗?为什么要使用反射?
  • 数据结构中常用排序算法?

以上就是关于 Java 所问道的知识点,记得不是太清楚了,待补充。。。

关于 Android 方面的问到的知识点

  • Activity 的生命周期是什么? onPause 和 onStop 有什么区别?
  • Android 五种布局的性能对比?
  • Android 四大组件是什么?分别说说对它们的理解?
  • 关于 Service 的理解?它的启动方式有什么区别?
  • 了解 fragment 吗?说说你对它的理解?
  • 自定义过 view 吗?它的步骤是什么?说说你自定义 view 过程中出现的问题,以及是如何解决的?
  • 刷新 view 的几种方式,他们有什么区别?
  • Android 实现数据存储的几种方式?
  • 如何实现 Android 中的缓存的,通过使用第三方库和自定义来分别说明一下缓存技术的实现?
  • 如何实现 Activity 与 fragment 的通信?
  • Android 5.0、6.0、7.0 新特性?
  • Android 中的动画分类?
  • 你以前是如何进行屏幕适配的?
  • 说说 Activity 创建过程?
  • Android 中如何与 JS 交互的?
  • 了解 APP 的启动流程?
  • 你知道哪些图片加载库?他们有什么区别?ImageLoader 的内部缓存机制是什么?是如何实现的?
  • Android 中是如何实现异步通信的?
  • 说说 Handler 内部实现原理?
  • 使用过 AsyncTask 吗?说说它的内部实现原理?它有什么缺陷?如何改进?
  • 知道 JNI、Binder 吗?说说你对它们的理解?
  • 如何实现进程间的通信?
  • 说说 Android view 和 viewGroup 的事件分发机制?
  • 你开发过程中使用到了哪些第三方库?了解过他们的源码吗?
  • 你了解广播吗?它与 EventBus 有什么区别?能互相实现吗?
  • 你们网络请求是如何实现的?知道 Volley 吗?内部实现流程是什么?它与 OKHttp 有什么区别?
  • 你了解哪些第三方功能?知道推送吗?它的原理是什么?
  • 接触过 MVP 模式吗?说说看对它的认识?
  • 知道 Android 中的多渠道打包吗?
  • Android 签名机制的原理?反编译解压后的文件夹所包含的内容有哪些?
  • 你了解过模块化、组件化开发吗?
  • 开始开发 APP 如何进行架构?
  • APP 工程模块是如何划分的?你是如何进行封装的?
  • APP 是如何进行优化的?知道 OOM 吗?如何解决内存泄漏?

以上就是我这次面试过程中涉及到的一些关于Android 方面的知识点,有点模糊了,全凭记忆,待补充....