当前位置: 首页 > news >正文

作为面试官如何从深度和广度上考察面试者

版权申明:本文由知识星球《程序员突围》版权所有。未经许可,不得以任何形式转载

如果是做Android应用开发,作为面试官一般从深度和广度以及项目关键点来进行提问.

一般有深度面试官会进行深挖,看你能到哪层,比如:面试官问常用数据结构有哪些?Java中你用过哪些集合类?

  • 层次一:数据结构有哪些,数组,链表,树,图,表
  • 层次二: ArrayList 和 LinkedList 用的是哪一种?数组,链表
  • 层次三: HashMap 的原理,get方法和put方法区别?如何解决Hash冲突。散列列表
  • 层次四: HashMap(5) 长度是多少?
  • 层次五: 为什么是 2 的幂次,各个版本之间的区别
  • 层次五:ConcurrentHashMap有用过么?和HashMap区别是什么?

再举例一个,我经常回问的问题:

  • 层次一:进程和线程有什么区别?
  • 层次二:线程有哪几种状态
  • 层次三:Java中多线程有用过么?线程安全怎么理解?Volatile关键字有用过么?是线程安全的么?为什么?和synchronized有什么区别?
  • 层次四:Java中用过哪些锁?lock和synchronized有什么区别?
  • 层次五:给你一个两个线程,线程1打印‘A’,线程2打印‘B’,按顺序输出ABABAB...,写个伪代码或是思路。

如果是广度上,类似就是从 Java基础:基础概念,集合框架,内存模型,多线程,GC回收机制及策略 Android基础:动画,自定义View,事件分发,四大组件的了解,AIDL,Binder通信等

专题方向:

  • 1、如简历有写插件化,模块化,组件化开发,像我必问原理,过程,组件之间如何通信,
  • 2、如简历有写性能优化,从内存优化,渲染优化,电量优化,网络优化方向问实际中遇到的问题和解决手段,包括使用具体的工具名字。
  • 3、如简历有写做过NDK/JNI开发,必问虚函数,虚析构,Java如何传数据给JNI。 JNI有哪几种种引用?局部引用、全局引用、弱全局引用区别?怎么释放引用?是不是一定要释放引用?
  • 4、如简历有过音视频开发,这个问的就很多了,后续总结。

如果是做AndroidFrameWork开发,主要从深度上考察。

举例一些基础面试题如下:

  • LRUCache原理
  • 图片加载原理
  • 模块化实现(好处,原因)
  • JVM
  • 视频加密传输
  • 统计启动时长,标准
  • 如何保持应用的稳定性
  • ThreadLocal 原理
  • 谈谈classloader
  • 动态布局
  • 热修复,插件化
  • HashMap源码,SpareArray原理
  • 性能优化,怎么保证应用启动不卡顿
  • 怎么去除重复代码SP是进程同步的吗?有什么方法做到同步
  • 介绍下SurfaceView
  • HashMap实现原理,ConcurrentHashMap 的实现原理
  • BroadcastReceiver,LocalBroadcastReceiver 区别
  • Bundle 机制Handler 机制
  • android 事件传递机制
  • 线程间 操作 List
  • App启动流程,从点击桌面开始
  • 动态加载
  • 类加载器
  • OSGI
  • Https请求慢的解决办法,DNS,携带数据,直接访问IP
  • GC回收策略

当然远远不止这些基础。

欢迎关注我的微信公众号「何俊林」,音视频、多媒体技术干货

相关文章:

  • 沃森想通过社交网络筛出最想要优惠券的人
  • 刨根问底 | Elasticsearch 5.X集群多节点角色配置深入详解【转】
  • 在word中输入任意角度旋转图片
  • python怎么写可读性好的面向过程的长篇代码?
  • 第一节:.Net版基于WebSocket的聊天室样例
  • Leetcode 28 实现strStr()
  • 小程序开发之改变data中数组或对象的某一属性值
  • 跟鱼八学NDK开发 基于Cmake(三) 使用含有第三方动态库的自己编译好的.so
  • MVC-Model数据注解(三)-Remote验证的一个注意事项
  • Go语言编写的web管理平台生成框架
  • 如何对高管实施股权激励?
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • PhotoShop制作gif动态广告效果示例
  • 怎样轻松将SD卡照片数据恢复
  • [总结型] HADOOP HDFS BALANCER介绍及经验总结
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • javascript从右向左截取指定位数字符的3种方法
  • laravel with 查询列表限制条数
  • PHP那些事儿
  • Python - 闭包Closure
  • Rancher如何对接Ceph-RBD块存储
  • SpiderData 2019年2月23日 DApp数据排行榜
  • vuex 笔记整理
  • Vue实战(四)登录/注册页的实现
  • webpack+react项目初体验——记录我的webpack环境配置
  • 从@property说起(二)当我们写下@property (nonatomic, weak) id obj时,我们究竟写了什么...
  • 飞驰在Mesos的涡轮引擎上
  • 构建二叉树进行数值数组的去重及优化
  • 前端相关框架总和
  • 我从编程教室毕业
  • 新书推荐|Windows黑客编程技术详解
  • 中文输入法与React文本输入框的问题与解决方案
  • k8s使用glusterfs实现动态持久化存储
  • 如何在招聘中考核.NET架构师
  • 通过调用文摘列表API获取文摘
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​MySQL主从复制一致性检测
  • #162 (Div. 2)
  • #pragma multi_compile #pragma shader_feature
  • #QT(TCP网络编程-服务端)
  • (2)STL算法之元素计数
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • ./configure、make、make install 命令
  • .axf 转化 .bin文件 的方法
  • .net FrameWork简介,数组,枚举
  • .NETCORE 开发登录接口MFA谷歌多因子身份验证
  • .net企业级架构实战之7——Spring.net整合Asp.net mvc
  • @Autowired和@Resource的区别