其他分享
首页 > 其他分享> > 五面阿里拿下飞猪事业部offer,跳槽薪资翻倍

五面阿里拿下飞猪事业部offer,跳槽薪资翻倍

作者:互联网

### 最后我想说 **为什么很多程序员做不了架构师?** 1、良好健康的职业规划很重要,但大多数人都忽略了 2、学习的习惯很重要,持之以恒才是正解。 3、编程思维没能提升一个台阶,局限在了编码,业务,没考虑过选型、扩展 4、身边没有好的架构师引导、培养。所处的圈子对程序员的成长影响巨大。 金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!**在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。** 附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。) ![](http://www.icode9.com/i/li/?n=2&i=images/20210705/1625491825356563.jpg) **里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…** * ##### **[点击这里免费领取](https://docs.qq.com/doc/DSkNLaERkbnFoS0ZF)** ### 1、四大组件是什么? > * Activity【活动】:用于表现功能。 > * Service【服务】:后台运行服务,不提供界面呈现。 > * BroadcastReceiver【广播接收器】:用来接收广播。 > * Content Provider【内容提供商】:支持在多个应用中存储和读取数据,相当于数据库。 ### 2、四个组件的生命周期? > Activity生命周期图及?Fragment生命周期图? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? > > ![这里写图片描述](http://www.icode9.com/i/li/?n=2&i=images/20210705/1625491826842397.jpg) > > ![这里写图片描述](http://www.icode9.com/i/li/?n=2&i=images/20210705/1625491826474758.jpg) > > Service的生命周期:首先Service有两种启动方式,而在这两种启动方式下,它的生命周期不同。 > > ![image](http://www.icode9.com/i/li/?n=2&i=images/20210705/1625491827133383.jpg) > > 通过startService()方法启动的服务 > > ??????初始化结束后系统会调用 void onStart(Intent intent)?方法,用于处理传递给startService()的Intent对象。如音乐服务会打开Intent 来探明将要播放哪首音乐,并开始播放。注意:多次调用startService()方法会多次触发onStart()方法。 > > 通过bindService ()方法启动的服务 > > ??????初始化结束后系统会调用 IBinder onBind(Intent intent)?方法,用来绑定传递给bindService 的Intent 的对象。注意:多次调用bindService()时,如果该服务已启动则不会再触发此方法。 ### 3、Activity的四种启动模式对比? > * Standard:标准的启动模式,如果需要启动一个activity就会创建该activity的实例。也是activity的默认启动模式。 > * SingeTop:如果启动的activity已经位于栈顶,那么就不会重新创建一个新的activity实例。而是复用位于栈顶的activity实例对象。如果不位于栈顶仍旧会重新创建activity的实例对象。 > * SingleTask:设置了singleTask启动模式的activity在启动时,如果位于activity栈中,就会复用该activity,这样的话,在该实例之上的所有activity都依次进行出栈操作,即执行对应的onDestroy()方法,直到当前要启动的activity位于栈顶。一般应用在网页的图集,一键退出当前的应用程序。 > * singleInstance:如果使用singleInstance启动模式的activity在启动的时候会复用已经存在的activity实例。不管这个activity的实例是位于哪一个应用当中,都会共享已经启动的activity的实例对象。使用了singlestance的启动模式的activity会单独的开启一个共享栈,这个栈中只存在当前的activity实例对象。 ### 4、Activity在有Dialog时按Home键的生命周期? > 当我们的Activity上弹出Dialog对话框时,程序的生命周期依然是onCreate() ---> onStart() ---> onResume(),在弹出Dialog的时候并没有onPause()和onStop()方法。而在此时我们按下Home键,才会继续执行onPause()和onStop()方法。这说明对话框并没有使Activity进入后台,而是在点击了Home键后Activity才进入后台工作。 > > 原因就是,其实Dialog是Activity的一个组件,此时Activity并不是不可见,而是被Dialog组件覆盖了其他的组件,此时我们无法对其他组件进行操作而已。 ### 5、两个Activity 之间跳转时必然会执行的是哪几个方法?? > 首先定义两个Activity,分别为A和B。 > > 当我们在A中激活B时,A调用onPause()方法,此时B出现在屏幕时,B调用onCreate()、onStart()、onResume()。 > > 这个时候B【B不是一个透明的窗体或对话框的形式】已经覆盖了A的窗体,A会调用onStop()方法。 ### ### 尾声 以薪资待遇为基础,以发展为最终目标,要在高薪资的地方,谋求最好的发展! 下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。有**[Android架构视频+BATJ面试专题PDF+核心笔记等资料](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)**。希望能够帮助到大家提升技术。如果大家想要获取的话,可以**私信我【666】免费获取哦** ![](http://www.icode9.com/i/li/?n=2&i=images/20210705/1625491827769094.jpg)

标签:offer,Activity,飞猪,启动,https,activity,Android,五面,###
来源: https://blog.51cto.com/u_15215973/2984758