Android面试之选择题

整理一些笔试经常碰见的面试题:

Android项目工程下面的assets目录的作用是什么(b)

A、放置应用到的图片资源。
B、主要放置多媒体等数据文件
C、放置字符串,颜色,数组等常量数据
D、放置一些与UI相应的布局文件,都是xml文件

关于res/raw目录说法正确的是(a)

A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式
B、这里的文件是原封不动的存储到设备上会转换为二进制的格式

C、这里的文件最终以二进制的格式存储到指定的包中
D、这里的文件最终不会以二进制的格式存储到指定的包中

下列对android NDK的理解正确的是(abcd )

A、 NDK是一系列工具的集合
B、 NDK 提供了一份稳定、功能有限的 API 头文件声明。
C、 使 “Java+C” 的开发方式终于转正,成为官方支持的开发方式
D、 NDK 将是 Android 平台支持 C 开发的开端

下面属于android的动画分类的有(ab)(多项)

A、Tween  B、Frame C、Draw D、Animation

下面退出Activity错误的方法是(c

A、finish()
B、抛异常强制退出
C、System.exit()
D、onStop()

下面不可以退出Activity的是?(D)

A.finish()
B.抛异常强制退出
C.System.exit(0)
D.onStop()

我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(a)

A、onDestroy()
B、onClear()
C、onFinish() 
D、onStop()

下列哪些语句关于内存回收的说明是正确的? (b )

A、 程序员必须创建一个线程来释放内存
B、 内存回收程序负责释放无用内存 
C、 内存回收程序允许程序员直接释放内存 
D、 内存回收程序可以在指定的时间释放内存对象 

下面异常是属于Runtime Exception 的是(abcd)(多选)

A、ArithmeticException
B、IllegalArgumentException
C、NullPointerException
D、BufferUnderflowException

Math.round(11.5)等于多少(). Math.round(-11.5)等于多少(c)

A、11,-11   B、11,-12   C、12,-11   D、12 ,-12

下列程序段的输出结果是:(b
void complicatedexpression_r(){
int x=20, y=30;
boolean b;
b=x<50&&y<60||x<50&&y<-60

x-y="">60||x<-50

y-br=""style="font-size:14px;font-style:normal;font-weight:700;font-family:Tahoma,;"microsoft="" yahei="" simsuncolor="" />     System.out.println(b);
}


A、true  B、false  C、1  D、011.activity5. 

//这个题我服了。网上的答案是D,在牛客网里面答案是A
对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(d)

 A、onPause()  B、onCreate()   C、 onResume()   D、onStart()

对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行?

正确答案: A   你的答案: D (错误)
A.onPause()
B.onCreate()
C.onResume()
D.onStart()

Intent传递数据时,下列的数据类型哪些可以被传递(abcd)(多选)

A、Serializable  B、charsequence  C、Parcelable  D、Bundle

android中下列属于Intent的作用的是(c)

A、实现应用程序间的数据共享
B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失
C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带
D、处理一个应用程序整体性的工作

关于intent的说法,错误的是?(C

 

A.可以用来激活一些组件
B.表示程序想做某事的意图
C.只能用于一个组件内部
D.是一个简单的消息对象

下列属于SAX解析xml文件的优点的是(b)

A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能
B、不用事先调入整个文档,占用资源少
C、整个文档调入内存,浪费时间和空间
D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失

在android中使用Menu时可能需要重写的方法有(ac)。(多选)

A、onCreateOptionsMenu()
B、onCreateMenu()
C、onOptionsItemSelected()
D、onItemSelected()

 @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        return super.onCreateOptionsMenu(menu);
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        return super.onOptionsItemSelected(item);
    }

在SQL Server Management Studio 中运行下列T-SQL语句,其输出值(c)。

 SELECT @@IDENTITY 
A、可能为0.1
B、可能为3
C、不可能为-100
D、肯定为0

在SQL Server 2005中运行如下T-SQL语句,假定SALES表中有多行数据,执行查询之     后的结果是(d)。 BEGIN TRANSACTION A
Update SALES Set qty=30 WHERE qty<30 br=""style="font-size:14px;font-style:normal;font-weight:400;font-family:Tahoma,;"microsoft="" yahei="" simsuncolor="" />        BEGIN TRANSACTION B
Update SALES Set qty=40 WHEREqty<40 br=""style="font-size:14px;font-style:normal;font-weight:400;font-family:Tahoma,;"microsoft="" yahei="" simsuncolor="" />              Update SALES Set qty=50WHEREqty<50 br="" style="font-size:14px;font-style:normal;font-weight:400;font-family:Tahoma,;"microsoft="" yahei="" simsuncolor="" />              Update SALES Set qty=60WHEREqty<60 br="" style="font-size:14px;font-style:normal;font-weight:400;font-family:Tahoma,;"microsoft="" yahei="" simsuncolor="" />        COMMIT TRANSACTIONB
COMMIT TRANSACTION A


A、SALES表中qty列最小值大于等于30
B、SALES表中qty列最小值大于等于40
C、SALES表中qty列的数据全部为50
D、SALES表中qty列最小值大于等于60

在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(ab)

A、getWriteableDatabase()
B、getReadableDatabase()
C、getDatabase()
D、getAbleDatabase()

android 关于service生命周期的onCreate()和onStart()说法正确的是(ad)(多选题)

A、当第一次启动的时候先后调用onCreate()和onStart()方法
B、当第一次启动的时候只会调用onCreate()方法
C、如果service已经启动,将先后调用onCreate()和onStart()方法
D、如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法

下面是属于GLSurFaceView特性的是(abc)(多选)

A、管理一个surface,这个surface就是一块特殊的内存,能直接排版到android的视图view上。
B、管理一个EGL display,它能让opengl把内容渲染到上述的surface上。
C、让渲染器在独立的线程里运作,和UI线程分离。
D、可以直接从内存或者DMA等硬件接口取得图像数据

关于ContenValues类说法正确的是(a)

A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值都是基本类型
B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任意类型,而值都是基本类型
C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可以为空,而值都是String类型 
D、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值也是String类型

关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是(d)        

A、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立 的Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念.
B、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux 中的一个进程,所以说不是一个概念.
C、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux 中的一个进程,所以说不是一个概念.
 D、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的 Dalvik虚拟机实例.而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念.

下列代码的执行结果是:( B )

public class Test3{
    public static void main(String args[]){
        System.out.print(100%3);
        System.out.print(",");
        System.out.println(100%3.0);
    }
}

     A、1,1 
  B、1,1.0 
  C、1.0,1 
  D、1.0,1.0

下面关于BroadcastReceiver错误的是 ( B )


  A、BroadcastReceiver有两种注册方式,静态注册和动态注册。 
  B、BroadcastReceiver必须在AndroidMainfest文件中声明 
  C、BroadcastReceiver的使用,一定有一方发送广播,有一方监听注册广播,onReceive方法才会被调用。 
  D、广播发送的Intent都是隐式启动。


java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分 类,按功能分为:(C),如果为读取的内容进行处理后再输出,需要使用下列哪种流?(G


  A、输入流和输出流 B、字节流和字符流 C、节点流和处理流  D、File stream E、Pipe stream F、Random stream G、Filter stream 

在一个ListView中,显示的行布局有多种不同形式,例如某些行只有ImageView,而另外一些行只有TextView,需要重写哪几个方法(ABCD)(多选)

A、getCount()

B、getItemId()

C、getItemViewType()

D、getViewTypeCount()

27.下列哪些情况下系统会弹出Froce Close对话框(BC)(多选)

A、应用运行时,Main线程进行了耗时操作

B、应用运行时抛出了OutOfMemoryError

C、应用运行时抛出了RuntimeException

D、应用运行时,用户操作过于频繁

使用SimpleAdapter作为 ListView的适配器,行布局中支持下列哪些组件(ACD)(多选)

A、TextView

B、ProgressBar

C、CompoundButton

D、ImageView

Android系统对下列哪些对象提供了资源池(AC)(多选)

A、Message

B、Thread

C、AsyncTask

D、Looper

Android中可以使用System.out.println(“”);在控制台中显示你想要显示的字符吗(B)

A、能

B、不能

对于一个已经存在的SharedPreferences对象setting,想向其中存入一个字符串"person",setting应该先调用什么方法(A)

A、edit()

B、save()

C、commit()

D、putString()

下列关于IntentService与Service的关系描述错误的是(CD)(多选)

A、IntentService是Service的子类

B、IntentService在运行时会启动新的线程来执行任务

C、启动方式不同

D、没有区别

下面哪条语句可以构造正确的对话框(BC)(多选)

A、AlertDialog dialog = new AlertDialog(context)

B、AlertDialog.Builder builder = new AlertDialog.Builder(context)

C、ProgressDialog dialog = new ProgressDialog(context)

D、ProgressDialog.Builder builder = new ProgressDialog.Builder(context)

在多个应用中读取共享存储数据时,需要用到的query方法,是哪个对象的方法(A)

A、ContentResolver

B、ContentProvider

C、CursorD

D、SQLiteHelper

下面关于Android中定义style和theme的描述正确的是(ABD)(多选)

A、都可以减少重复属性设置

B、style可以作用在Activity上

C、Theme类可以继承

D、一个TextView的style中定义了textColor属性,TextView本身也设置textColor属性,那么TextView本身定义的优先级较高

下列哪些情况下,系统可能会弹出ANR对话框(AC)(多选)

A、在Activity中,Main线程消息队列中的消息在5秒内没有得到响应

B、在Service中,onStartCommand()方法执行超过5秒

C、在BroadcastReceiver中,onReceive()方法执行时间超过10秒

D、在启动的新线程中,run()方法执行时间超过5秒

以下关于Toast说法正确的是(BD)(多选)

A、Toast能编辑

B、Toast没有焦点

C、Toast可以获得用户输入

D、Toast只能持续一段时间

关于Intent 对象说法错误的是(D)

A、在 android 中,Intent对象是用来传递信息的

B、Intent 对象可以把值传递给广播或 Activity

C、利用 Intent 传值时,可以传递一部分值类型

D、利用 Intent 传值时,它的 key 值可以是对象

下列关于数据持久化的描述正确的有(BD)(多选)

A、在内存中缓存多个Bitmap对象是一种数据持久化方法

B、SQLite数据库文件可以保存在SD卡中

C、ContentProvider的主要目的是为了将Android应用的数据持久化

D、数据持久化就是将内存的数据保存到外存

在继承中,关于构造方法的说明,下列说法错误的是(D)

A、子类无条件的继承父类的无参构造方法,

B、子类可以引用父类中的有参构造方法,使用super关键字,

C、如果子类没有构造方法,则父类无参构造方法作为自已的构造方法,

D、如果子类有无参构造方法,而父类的无参构造方法则被覆盖

通过Intent传递一些二进制数据的方法有哪些? (c)

A、使用Serializable接口实现序列化,这是java常用的方法 

B、实现Parcelable接口,这里Andriod的部分分类比如Bitmap类就已经实现了,同时Parcelable在Android AIDL中交换数据也很常见

C、AB都是

在android studio中,下列哪一项是 mainfest 文件的功能(A)

A.都是
B.声明要求的最低API级别
C.声明要求的用户权限的级别
D.记录程序中使用的Activity等资源

关于 Handler 的说法正确的是(A

A.它实现不同线程间通信的一种机制
B.它不能在新线程中执行刷新UI的操作
C.它采用栈的方式来组织任务的
D.它可以属于一个新的线程

如果在应用程序中设置闹钟,则应该使用( A)类

A.AlarmManager
B.ClockManager
C.AudioManager
D.PhoneManager

关于ServiceConnection接口的onServiceConnected()方法的触发条件描述正确的是?(B)

A.bindService()方法执行成功后
B.bindService()方法执行成功同时onBind()方法返回非空IBinder对象
C.Service的onCreate()方法和onBind()方法执行成功后
D.Service的onCreate()和onStartCommand()方法启动成功后

Android dvm的进程和Linux的进程,以下说法是错误的是(D)

A.它们都是进程的一种
B.dvm是android的虚拟机
C.linux的进程是程序的具体实现,是执行程序的过程
D.dvm中可以创建多个进程来处理应用间的同步问题

将一个Activity设置成窗口的样式,只需设置Theme(A)

A.True
B.False

关于AlertDialog描述错误的是( D).

A.show()方法创建并显示对话框
B.AlertDialog.Builder的create() 和show()方法都返回AlertDialog对象
C.AlertDialog不能直接用new关键字构建对象,而必须使用其内部类Builder
D.create()方法创建并显示对话框

在同一线程中android.Handler和android.MessaegQueue的数量对应关系是怎样的?(B)

A.1(Handler):1(MessageQueue)
B.N(Handler):1(MessageQueue)
C.1(Handler):N(MessageQueue)
D.N(Handler):N(MessageQueue)

下列关于 Android 数字签名描述错误的是:(C)

A.所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序
B.Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证
C.如果要正式发布一个Android程序,可以使用集成开发工具生成的调试证书来发布。
D.数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

关于 android 中播放视频的说法不对的是 (C)

A.可以使用SurfaceView组件播视频
B.可以使用VideoView组件播视频
C.VideoView组件可以控制播放的位置和大小
D.VideoView播放视频的格式可以是3gp

使用AIDL完成远程service方法调用下列说法不正确的是(A)

A.aidl对应的接口名称不能与aidl文件名相同
B.aidl的文件的内容类似java代码
C.创建一个Service(服务),在服务的onBind(Intent intent)方法中返回实现了aidl接口的对象
D.aidl对应的接口的方法前面不能加访问权限修饰符

在Android中使用IBinder进行IPC通讯时,能够传递下列哪些数据?(ABC)

A.Parcleable
B.Serializable
C.Bundle
D.CharSequence

以下适合在客户端做数据持久化存储的数据的有(BD)

A.redis
B.localStorage
C.sessionStorage
D.userData

Broadcast Receiver是一个专注于接收广播通知消息,并做出对应处理的组件。下列说法正确的是(ABD

A.BroadcastReceiver 是对发送出来的广播进行过滤接收并响应的一类组件
B.每次广播被接收后会重新创建BroadcastReceiver对象,并在onReceiver方法中执行完时销毁
C.如果需要在BroadcastReceiver中执行耗时的操作,可以通过Intent启动Service来完成,并同时绑定Service
D.定义广播接收器类需要继承BroadcastReceiver基类,并且必须要重写onReceive()方法

关于图片视图的设置,正确的是?(A)

A.所有选项均正确
B.scaleType:设置图片的填充方式
C.adjustViewBounds:调整边框时是否保持可绘制对象的宽高比
D.用src来设置要展示的图片
F.主要在布局文件里配置

下面哪种进程最重要,最后被销毁?(C

A.服务进程    B.后台进程   C.前台进程   D.可见进程

在滴滴打车点击到支付宝支付,出现密码输入框,到此时相关的Activity会发生的生命周期回调依次为(D

A.Onpause() ondestroy() oncreate() onresume()
B.ondestroy()oncreate() onstart() onresume()
C.onstop() ondestroy() oncreate() onstart()
D.onpause() oncreate() onstart() onresume()
//阅读代码回答运行结果。
public classMainActivity extends Activity implemets OnClickListener {
    private Button mBtnLogin = (Button)findViewById(R.id.btn_login);
    private TextView mTextViewUser;
    @Override
    protected void onCreate(BundlesavedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mTextViewUser = (TextView)findViewById(R.id.textview_user);
        mBtnLogin.setOnClickListener(this);
        new Thread() {
            @Override
            public void run() {
                mTextViewUser.setText(10);
            }
        }.start();
    }
    @Override
    public void onClick(View v) {
        mTextViewUser.setText(20);
    }
}

上面运行的正确答案是(c

A.Resources$NotFoundException
B.ViewRootImpl$CalledFromWrongThreadException
C.NullPointerException
D.运行正常,mTextViewUser组件上显示内容为10

在 Android 中, 在屏幕密度为160时, 1pt 大概等于(B)sp

A. 1.22   B. 2.22   C. 2.12   D. 1.12

下面哪一项不属于android的动画类型?(D)

A.Tween   B.Alpha   C.Frame    D.Animation

下列属于android常用的跨进程通信工具有:(AB)

A.broadcast    B.AIDL      C.handler

关于Activity生命周期事件回调函数的说法正确的是(AD

A.onCreate()方法在Activity第一次被创建时调用
B.onStart()方法在Activity开始和用户交互,用户可输入信息时调用
C.onRestart()方法在系统重新启动前一个Activity时调用
D.onStop()方法在Activity对用户不可见时调用

Android studio中,下列哪一项是manifest 文件的功能(CD)

A.都是
B.声明要求的最低API级别
C.声明要求的用户权限的级别
D.记录程序中使用的Activity等资源

下列对AsyncTask的描述,哪些是正确的?(ABC)

A.onProgressUpdate()方法是在主线程中执行的
B.如果同时执行多个AsyncTask的话,他们默认是串行执行
C.AsyncTask的实例应在UI thread中创建实例
D.AsyncTask内部默认的线池是也是通过java.util.concurrentExecuttors.newFixedThreadPool创建的

如何把一个字符串转换成URI?(B)

A.uri new uri=uri.parse("content://com.changcheng.provider.contactprovider/contact")
B.uri uri=uri.parse("content://com.changcheng.provider.contactprovider/contact")
C.android.uri uri=uri.parse("content://com.changcheng.provider.contactprovider/contact")
D.uri uri=android.uri.parse("content://com.changcheng.provider.contactprovider/contact")

在Tween动画下,下面哪个方法可以构建一个渐变尺寸伸缩动画( B

A.AlphaAnimation
B.ScaleAnimation
C.TranslateAnimation
D.RotateAnimation

Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念(A)

A.是   B.不是

从架构图看,android分为几个层?(A)

A.5   B.2   C.4  D.3

下列哪一项是AndroidManifest 文件的作用( ABCD

A.声明程序启动的第一个Activity
B.注册广播接收者
C.声明程序所要使用的权限
D.声明程序所包含的Activity及其对应的类

关于startActivityForResult()方法,如果A跳转B,B的launchMode属性为singleInstance,A的onActivityResult()回调方法会在什么时候调用呢?(B)

A.B被启动的时候即调用
B.B返回的时候调用
C.下一次A启动的时候调用
D.不会被调用

RatingBar 组件中不能用属性直接设置的是(D)

A.五角星个数    B.当前分数    C.分数的增量    D.五角星的色彩

RemoteView在哪些功能中使用(BD)

A.Toast  B.AppWidget  C.ListView  D.Notification

NotificationManager 中清除消息的方法是(BD)

A.destroy  B.cancel  C.clear  D.cancelAll

下面哪些在 android 中不是合法的属性(D

A.android:id
B.android:name
C.android:description
D.android:protectionlevel

获取某个View宽高信息的四种方法(ABCD

A.onWindowFocusChanged

B.ViewTreeObserver

C.view.measure(int widthMeasureSpec, int heightMeasureSpec)

D.view.post(runnable)

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值