腾讯移动客户端开发(安卓方向)2020暑期实习一面面经

腾讯移动客户端开发(安卓方向)2020暑期实习一面面经

废话不多说,直接上问题

问题

1.自我介绍
2.项目相关
3.Java的基本数据类型(8种)
4.Java语言的特性(平台无关性:运行在JVM上;面向对象:继承,多态,封装;自动内存管理:垃圾回收机制;解释型语言;支持并发编程;健壮性:强类型机制,异常处理,垃圾回收)
5.面向对象编程和面向过程编程各自是什么,有哪些区别
6.==和equals有什么区别?
7.学过设计模式吗(我坦言还没有学过,正准备学习)
8.http和https有什么区别?
9.TCP连接建立过程是几次握手,几次挥手?
10.学过Kotlin吗
11.自己开发过小程序吗?
12.多线程编程(我坦言没有进行过较复杂的并发编程经验,只掌握了安卓中Handler和AsyinTask)
13.死锁是什么,经历过吗?
14.如何启动一个线程?(类与接口)
15.详述一下具体怎么用类启动线程
16.sleep()和wait()有什么区别?(类不同,方法类型不同,时间是否必要不同,执行效果不同,sleep方法不释放对象锁,wait释放对象锁)
17.安卓中四大组件(ABCS)
18.活动的状态都有哪些?
19.活动A跳转到活动B,A、B分别经历了哪些状态?
20.活动的启动模式
21.说几个布局名称,以及它们是怎么布局的
22.什么情况下用线性布局,什么 情况适合相对布局?
23.安卓中数据持久化都有哪些方式?
24.什么样的数据适合使用文件存储,什么样的数据适合使用SharedPreferences,什么样的数据适合使用SQLlite?
(文件存储不对存储内容进行任何格式化处理,所有数据都是原封不动地保存到文件中的,因而适合一些文本数据或二进制数据;SharedPreferences使用键值对的方式存储数据,适用于保存一些简单的数据和键值对,通常用来存储一些简单的配置信息;SQlite适合存储大量复杂的关系型数据)
25.SQLlite都有哪些特点?
(SQlite是一款轻量级的关系型数据库,运算速度非常快,占用资源很少,因而特别适合在移动设备上使用。SQLite不仅支持标准的SQL语法,还遵循了数据库的ACID事务,比一般数据库要简单,无需设置用户名密码即可使用)
26.编程题 输出输入数值二进制下1的个数
27.你有什么想问的?(我问了接下来我应该怎么学习以及Kotlin目前的普及度)

总结

第一次面试,还是有点紧张,个别本来会的问题也没有答出来或没有答得很好,自己在设计模式和并发编程上需要学习的还有很多,也需要继续刷题,开发经验可以在github上找几个感兴趣的项目看一看,自己动动手开发一两个小App。
总之,需要学习的还有很多吧,希望自己一步一个脚印踏踏实实的坚持学下去,同时也祝自己在今晚的美团安卓暑期实习笔试中好运,也祝所有看本篇博客的同学们好运,早日收获自己的offer

你可能感兴趣的:(笔记)