android 测试题 答案Word文档下载推荐.docx

上传人:b****3 文档编号:16650402 上传时间:2022-11-25 格式:DOCX 页数:38 大小:35.51KB
下载 相关 举报
android 测试题 答案Word文档下载推荐.docx_第1页
第1页 / 共38页
android 测试题 答案Word文档下载推荐.docx_第2页
第2页 / 共38页
android 测试题 答案Word文档下载推荐.docx_第3页
第3页 / 共38页
android 测试题 答案Word文档下载推荐.docx_第4页
第4页 / 共38页
android 测试题 答案Word文档下载推荐.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

android 测试题 答案Word文档下载推荐.docx

《android 测试题 答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《android 测试题 答案Word文档下载推荐.docx(38页珍藏版)》请在冰豆网上搜索。

android 测试题 答案Word文档下载推荐.docx

下列选项中,哪个方法可以准确的获取请求页面的一个文本框的输入(文本框的名称为name) 

()。

A、request.getParamter(name)

B、request.getParamter(“name”)

C、request.getParamterValues(name)

D、request.getParamterValues(“name”)

request.getParameter("

name"

) 

根据name获取value值

request.getParameterNames("

根据name获取一组值,如多选框

3、

在web.xml中下面哪一个标签标示servlet的URL映射()(10分)

A、mapping

B、servlet-url

C、url-mapping

D、servlet-mapping

D

servlet-mapping>

servlet-name>

HelloServlet<

/servlet-name>

/hello<

/servlet-mapping>

多选题共2题满分:

20分

4、

下列选项中,说法正确的是()。

A、客户端每次请求都会创建一个request对和response对象并且把这2个对象传递到doGet方法和doPost方法中

B、在浏览器的地址栏输入地址,点击回车,这个过程称为一次请求

C、HttpServletResponse,是一个接口,父接口是Servlet

D、服务器端根据客户端的请求,返回数据到浏览器中进行显示,这个过程称为一次响应

A,B,D

C错误原因:

HttpServletResponse,是一个接口,父接口是ServletResponse

5、

下列选项中,()是http相应包含的组成部分。

A、响应体

B、响应头

C、响应尾

D、响应行

HttpServletResponse,是一个接口,父接口是ServletResponse,代表响应对象。

http的响应包含三部分组成:

第一部分:

响应行l第二部分:

响应头l第三部分:

响应体

判断题共0题满分:

0分

填空题共1题满分:

10分

6、

_____是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。

Servlet

Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。

它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。

Servlet是位于Web 

服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。

简答题共1题满分:

7、

请简述HttpServletRequest实例的getContextPath() 

方法,getRequestURL()方法和getParameter("

方法的作用。

(20分)

request.getContextPath() 

获取根路径;

request.getRequestURL();

获取请求的url;

根据name获取value值;

request对象是请求对象。

请求一次就创建一个request对象,并且存储了请求的信息。

所以在表单提交中,我们可以通过request对象获取用户提交的所有信息。

HttpServletRequest类中的常用方法:

获取根路径。

获取请求的url

request.getRequestDispatcher("

路径 

"

).forward(request,response) 

转发是一次请求

request.getCookie();

获取请求中的cookie

request.getSession(true)获取session。

默认参数为true表示如果没有获取到,则重新创建并返回;

false如果没有获取到,返回null

代码题共1题满分:

8、

写一个HelloServlet 

,实现向页面输出内容hi 

czbk。

JavaWeb101.txt 

下载

实现Servlet

(1)实现Servlet接口

如果实现接口,需要把接口里面的方法都实现。

(2)继承GenericServlet, 

HttpServlet类

如果继承类,不需要把类中的方法都实现。

(3)需要web服务器知道java程序不是一个普通的java程序,而是一个servlet

通过配置进行操作,在web项目中,web.xml里面进行配置。

[1]定义一个类继承httpServlet

publicclassHelloServletextendsHttpServlet{

//处理get请求

@Override

protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

PrintWriterwriter=resp.getWriter();

//向浏览器的输出流

writer.println("

html>

);

body>

hiczbk"

/body>

/html>

}

//处理post请求

protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)

doGet(req,resp);

}

[2]重写2个方法doGet,doPost

[3]在在web.xml中配置

servlet>

servlet-class>

cn.itcast.servlet.ServletDemo1<

/servlet-class>

/servlet>

第二天:

1、

关于ANR描述错误的是( 

)。

A、ANR全称是ApplicationNotResponding

B、出现ANR异常不会影响用户使用

C、在主线程中执行了耗时的操作会引起ANR

D、应用超过5秒钟不响应用户操作会出现anr

在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:

Application 

Not 

Responding)对话框。

用户可以选择让程序继续运行,但是,他们在使用你的应用程序时,并不希望每次都要处理这个对话框。

因此,在程序里对响应性能的设计很重要,这样,系统不会显示ANR给用户。

关于handler消息分发机制,下列( 

)方法可以延时发送消息。

A、sendEmpty(..)

B、sendEmptyMessage(..)

C、sendMessageDelayed(..)

D、sendMessage(..)

C

我们利用Handler的sendMessageDelayed(msg, 

secs*1000),可以要求secs秒后,将信息放置在队列中,排队处理,很简单就能实现。

关于Android中消息机制说法正确的是()。

A、Handler只能用来发送消息

B、Handler是用来发送消息和处理消息的

C、MessageQueue是用来收集消息并主动发送消息

D、Looper是主消息的循环器.Looper是由handler创建的

Handler顾名思义就是处理者的意思,它主要用于发送消息和处理消息。

一般使用Handelr对象的sendMessage()方法发送消息,发出的消息经过一系列的辗转处理后,最终会传递到Handler对象的handlerMessage()方法中.

下列选项中说法正确的是() 

A、避免ANR,可以把耗时操作放到子线程

B、ANR是ApplicationNotResponse应用无响应

C、只有在主线程(UI线程)才可以更新UI

D、消息机制可以用来处理这种更新UI的情况

A,B,C,D

(1)ANR 

Response 

应用无响应。

主线程(UI线程)。

(2)如果在主线程中进行了耗时的操作(比如连接网络,拷贝大数据)Thread.sleep();

(3)避免ANR,可以把耗时操作放到子线程。

(4)在4.0之后谷歌强制要求连接网络不能在主线程中进行访问。

09-26 

01:

49:

03.818:

W/System.err(1638):

android.os.NetworkOnMainThreadException

(5)只有在主线程(UI线程)才可以更新UI

51:

50.050:

W/System.err(1708):

android.view.ViewRootImpl$CalledFromWrongThreadException:

Only 

the 

original 

thread 

that 

created 

view 

hierarchy 

can 

touch 

its 

views.

(6)消息机制可以用来处理这种更新UI的情况。

由于子线程不能更新UI代码,我们可以使用下列哪种方式()解决这个问题。

A、在子线程中使用setImageView(..)设置图片

B、调用runOnUiThread(..)方法中更新ui

C、在子线程中用handler发送message给主线程,然后在主线程中更新ui

D、Thread中直接更新ui

B,C

runOnUiThread(),顾名思义就是运行在UI线程,也就是主线程。

1. 

如果仅仅就是更新UI,那么我们可以用runOnUiThread(),当中的代码都会在主线程中执行。

2. 

当我们需要传递参数的时候,这时候就需要使用handler来实现

_____ 

主要用于存放所有通过Handler发送的消息。

MessageQueue

Message

Message是在线程之间传递的消息,它可以在内部携带少量的信息what字段,用于在不同线程之间交换数据。

除此之外还可以使用arg1和arg2字段来携带一些整型数据,使用obj字段携带一个Object对象。

Handler

Handler顾名思义也就是处理者的意思,它主要是用于发送和处理消息的。

发送消息一般是使用Handler的sendMessage()方法,而发出的消息经过一系列地辗转处理后,最终会传递到Handler的handleMessage()方法中。

3. 

MessageQueue是消息队列的意思,它主要用于存放所有通过Handler发送的消息。

这部分消息会一直存在于消息队列中,等待被处理。

每个线程中只会有一个MessageQueue对象。

4. 

Looper

Looper是每个线程中的MessageQueue的管家,调用Looper的loop()方法后,就会进入到一个无限循环当中,然后每当发现MessageQueue中存在一条消息,就会将它取出,并传递到Handler的handleMessage()方法中。

每个线程中也只会有一个Looper对象。

简单介绍一下Handler使用步骤.(20分)

在主线程创建Handler对象

Private 

Handler 

handler 

new 

Handler(){

重写handlemessage方法 

拿着主线程创建的Handler发送一条消息

handler.sendMessage();

重写的handlemessage方法就会接收到我们发送的消息.

Android4.0以后不能在UI线程访问网络,而子线程也不能更新UI界面。

为了根据下载进度实时更新UI界面,就需要用到Handler消息机制来实现线程间的通信,一般我们在主线程创建Handler对象.然后开启一个子线程去访问网络处理耗时的任务,然后通过主线程创建的Handler发送消息,消息就被加入到了消息队列MessageQueue中,系统里有一MainLooper(主消息的循环器),不断的监视消息队列,一旦发现消息队列里有消息,就把消息给取出来交给Handler,我们重写Handler的handleMessage()方法,在这个方法里面去更新ui.

编写一个图片查看器的案例,访问指定的url地址,并将获取到的图片更新ui界面。

(请使用除handler以外的方式)。

子线程不能更新ui,所以通过runOnUiThread在主线程中更新ui.

Xml布局文件:

LinearLayoutxmlns:

android="

xmlns:

tools="

android:

layout_width="

match_parent"

layout_height="

orientation="

vertical"

tools:

context="

.MainActivity"

>

<

Button

wrap_content"

onClick="

click"

text="

查看"

/>

ImageView

id="

@+id/iv"

/LinearLayout>

Java代码中:

publicclassMainActivityextendsActivity{

privateImageViewiv;

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//[1]找到我们关心的控件

iv=(ImageView)findViewById(R.id.iv);

//[2]点击按钮进行查看指定路径的源码

publicvoidclick(Viewv){

newThread(){

publicvoidrun(){

Stringpath="

try{

URLurl=newURL(path);

HttpURLConnectionconn=(HttpURLConnection)

url.openConnection();

conn.setRequestMethod("

GET"

conn.setConnectTimeout(5000);

intcode=conn.getResponseCode();

if(code==200){

InputStreaminputStream=conn.getInputStream();

finalBitmapbitmap=

BitmapFactory.decodeStream(inputStream);

runOnUiThread(newRunnable(){

publicvoidrun(){

iv.setImageBitmap(cacheBitmap);

}

});

}

}catch(Exceptione){

e.printStackTrace();

}

};

}.start();

第三天:

1,当前Activity被其他Activity覆盖或者锁屏,系统会调用()生命周期方法 

,暂停当前Activity的执行。

A、onDestroy()

B、onStop()

C、onPasue()

D、以上都会调用

启动Activity:

系统会先调用onCreate()方法,然后调用onStart()方法,最后调用onResume()方法,Activity进入运行状态。

当前Activity被其他Activity覆盖或者锁屏:

系统会调用onPasue()方法,暂停当前Activity的执行。

当前Activity由覆盖恢复到前台或者被解锁屏:

系统会调用onResume()方法,再次进入运行状态。

当前Activity转到新的Activity界面或者Home键回到主屏,自居后台:

系统会调用onPasue()方法,然后调用onStop()方法,进入停滞状态。

5. 

用户退回到此Activity:

系统会调用onRestart()方法,然后调用onStart()方法,最后调用onResume()方法,再次进入运行状态。

6. 

当前Activity处于被覆盖状态或者后台不可见状态:

有的时候系统内存不足,会杀死该Activity,而后用户退回到该Activity时:

再次调用onCreate(),onStart(),onResume()方法,进入运行状态。

7. 

用户退出该Activity:

系统会调用onPause()方法,然后onStop()方法,最后onDestroy()方法,结束该Activity。

Intent中如果既要设置类型又要设置数据,需要使用()方法。

A、setData(..)

B、setType(..)

C、setDataAndType(..)

D、setTypeAndData(..)

Intent.setData(data)和intent.setType(type)注意这两个方法会互相清除,意思就是:

如果先设置setData(data)后设置setType(type),那么后设置的setType(type)会把前面setData(data)设置的内容清除掉,而且会报错,反之一样,所以如果既要设置类型与数据,那么使用setDataAndType(data,type)这个方法。

使用() 

管理器来完成发送短信的功能。

A、ActivityManager

B、WifiManager

C、SmsManager

D、ConnectivityManager

ActivityManager 

是与系统中所有运行着的Activity交互提供了接口,主要的接口围绕着运行中的进程信息,任务信息,服务信息等。

WifiManager 

类似获得wifi链接名字,判断是否链接,开关等一些和无线相关;

SmsManager 

管理短信操作,如发送数据,文本和PDU短信;

ConnectivityManager 

主要管理网络连接相关操作;

intent传递数据时可以传递()类型的数据。

A、Serializable

B、charsequence

C、Parcelable

D、Bundle

第一类:

简单或基本数据类型;

第二类:

传递一个Bundle;

第三类:

传递Serializable对象;

第四类:

Parcelable对象;

第五类:

Intent 

return 

this;

下列选项中()属于Activity的生命周期方法。

A、onCreate()

B、onStart()

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1