2024 秋招 百度一面,Android常用面试

48 阅读6分钟

2、HEAD

向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。

3、GET

向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在Web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问。Loadrunner中对应get请求函数:web_link和web_url

4、POST

向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form

5、PUT

向指定资源位置上传其最新内容

6、DELETE

请求服务器删除Request-URL所标识的资源

7、TRACE

回显服务器收到的请求,主要用于测试或诊断

8、CONNECT

HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

注意:

1)方法名称是区分大小写的,当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方法时,应返回状态码501(Not Implemented)。

2)HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法,特定的HTTP服务器支持扩展自定义的方法。

3.冒泡排序,优化,手写


public static void bubbleSort(int[] arr) {

for (int i = 0; i < arr.length - 1; i++) {

boolean flag = true;//设定一个标记,若为true,则表示此次循环没有进行交换,也就是待排序列已经有序,排序已然完成。

for (int j = 0; j < arr.length - 1 - i; j++) {

if (arr[j] > arr[j + 1]) {

swap(arr,j,j+1);

flag = false;

}

}

if (flag) {

break;

}

}

}

4.打印出2-100的所有素数,优化,手写


5.安卓四大组件简单介绍


5.1 Activity-活动:

(1)、Activity是Android程序的呈现层,显示可视化的用户界面,并接收与用户交互所产生的界面事件,如单击、触摸事件。在界面上呈现形式为全屏窗体、非全屏悬浮窗体的对话框。

(2)、Activities是可执行的代码块,由用户或者操作系统来进行初始实例化,并在他们被需求时致以运行。

(3)、Activities可以与用户、请求数据或者其他Activity、Service的服务通过query或Intent进行交互。

(4)、对于一个Android应用程序而言,可以有一个或多个Activity,一般在程序启动后会呈现一个Activity,用于提示用户已经正常启动此Activity。当Activity不积极运行时,可以被Android系统终止已节省内存。

5.2 Service-服务:

(1)、Service用于没有用户界面,但需要长时间在后台运行的应用。Service有点类似于桌面应用或者服务器操作系统上的服务和守护进程。

(2)、Service是在后台运行的可执行的代码块,从它被初始化一直运行到此程序关闭。

(3)、Service最经典的一个例子是音乐播放器,尽管用户已经使用了其它的应用程序,但仍然需要持续播放音乐,比如在你听歌的时候,有人打个电话进来,此时音乐播放器的服务仍然子啊后台运行着,等你电话接完,音乐又会重新播放,在你接电话的时候是无音乐播放器的界面的,而程序一直执行Service来实现后台任务。

5.3 BroadcastReceiver-广播接收器

(1)、Broadcast和Intent Receivers对从其他的应用程序的服务请求做出一个全系统广播的响应,这些广播响应可能来自于Android系统本身或者是任何在其系统上运行的程序。

(2)、BroadcaseReceiver是用来接受并响应广播消息的组件。

(3)、BroadcaseReceiver不包含任何用户界面,但可以通过启动Activity或者Notification消息通知栏通知用户接收到重要信息。

(4)、Activity或Service通过执行一个IntentReceiver 为其他应用程序提供了访问其功能的功能。Intent Receiver是一段可执行代码块,对其他Activity的数据或服务请求做出响应。请求的Activity(客户端)生成一个Intent,把其添加至Android Framework中,来指出哪些应用程序(目标程序)接收并对其做出响应。

(5)、Intent是Android的主要构成元素之一,它从现有的应用程序中创造新的应用程序。Intent实现了应用程序和其他的应用程序和服务交换所需信息的功能。

5.4 ContentProvider-内容提供器:

(1)、ContentProvider是Android系统提供的一种标准的共享数据的机制,应用程序可以通过ContentProvider来访问其他应用程序的私有数据(私有数据可以是存储在文件系统中的文件,也可以是SQLite中的数据库)。

(2)、Android系统内部也提供一些内置的ContentProvider,能够为应用程序提供重要的数据信息。

6. ContentProvider底层是怎么实现的?


7. 进程和线程区别


最后

总而言之,成功是留给准备好的人的。无论是参加什么面试,都要做好充足的准备,注意好面试的礼仪和穿着,向面试官表现出自己的热忱与真诚就好。即使最后没有过关,也要做好经验的总结,为下一次面试做好充足准备。

这里我为大家准备了一些我在面试后整理的面试专题资料,除了面试题,还总结出了互联网公司Android程序员面试涉及到的绝大部分面试题及答案,并整理做成了文档,以及系统的进阶学习视频资料,免费分享给大家,希望能帮助到你面试前的复习,且找到一个好的工作,也节省大家在网上搜索资料的时间来学习。

毕竟不管遇到什么样的面试官,去面试首先最主要的就是自己的实力,只要实力够硬,技术够强,就不怕面试拿不到offer!

想要面试顺通嘛,赶紧领取下面的面试资料为之后的面试做足准备叭!这里提前祝各位面试成功!

资料领取方式:  Android架构设计

为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!希望读到这的您能点个小赞和关注下我,以后还会更新技术干货,谢谢您的支持!