错误知识点:
AIDL 关于进程的API AlertDialog 数据类型用法 SQLite
Activity的静态属性
方法改进:
重点的api函数要直接看文档了解用法。
1.使用AIDL完成远程service方法调用下列说法不正确的是
正确答案: A 你的答案: 空 (错误)
aidl对应的接口名称不能与aidl文件名相同
aidl的文件的内容类似java代码
创建一个Service(服务),在服务的onBind(Intent intent)方法中返回实现了aidl接口的对象
aidl对应的接口的方法前面不能加访问权限修饰符
遇到下列哪种情况时需要把进程移到前台?
正确答案: D 你的答案: A (错误)
进程正在运行一个与用户交互的Activity ,它的onResume()方法被调用
进程有一正在运行的BroadcastReceiver,它的onReceive()方法正在执行
进程有一个Service,并且在Service的某个回调函数(onCreate()、onStart()、或onDestroy())内有正在执行的代码
所有选项均正确
进程有一个Service,该Service对应的Activity正在与用户交互
使用Toast提示时,关于提示时长,下面说法正确的是( ).
正确答案: A 你的答案: B (错误)
显示时长默认只有2种设置
关于AlertDialog描述错误的是( ).
正确答案: D 你的答案: C (错误)
show()方法只显示对话框
AlertDialog.Builder的create() 和show()方法都返回AlertDialog对象
AlertDialog不能直接用new关键字构建对象,而必须使用其内部类Builder
create()方法创建并显示对话框
Intent传递数据时,下列的数据类型哪些可以被传递
正确答案: A B C D 你的答案: A C D (错误)
Serializable
CharSequence
Parcelable
Bundle
android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是?
正确答案: A B 你的答案: A C D (错误)
getWriteableDatabase()
getReadableDatabase()
getDatabase()
getAbleDatabase()
Android使用 getWritableDatabase() 和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例。(getReadableDatabase()方法中会调用getWritableDatabase()方法)
getReadableDatabase()并不是以只读方式打开数据库,而是先执行getWritableDatabase(),失败的情况下才以只读方式打开数据库.。
但getWritableDatabase()方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写,
getWritableDatabase()打开数据库就会出错。getReadableDatabase()方法先以读写方式打开数据库,
倘若使用如果数据库的磁盘空间满了,就会打开失败,当打开失败后会继续尝试以只读方式打开数据库.
下列对android NDK的理解正确的是
正确答案: A B C D 你的答案: A C D (错误)
NDK是一系列工具的集合
NDK 提供了一份稳定、功能有限的 API 头文件声明
使 “Java+C” 的开发方式终于转正,成为官方支持的开发方式
NDK 将是 Android 平台支持 C 开发的开端
有关Activity生命周期描述正确的是
正确答案: B C 你的答案: A C (错误)
设置Activity的android:screenOrientation=”portrait”属性时,切换屏幕横纵方向时不会重新调用各个生命周期,只会执行onConfigurationChanged方法
未设置Activity的android:configChanges属性,切换屏幕横纵方向时会重新调用onCreate()方法
当再次启动某个launchMode设置为singletask的Activity,它的onNewIntent()方法会被触发
用户正在操作某个Activity,这时如果其他应用程序需要内存,系统会将用户当前操作的Activity强制关闭
C)
A 设置Activity的android:screenOrientation=”portrait”属性时,无法切换横竖屏,因此不但不会重新调用各个生命周期方法,而且onConfigurationChanged()方法也不会执行。
B 未设置Activity的android:configChanges属性,API上这样说”the activity will be restarted if any of these configuration changes happen in the system.”;如何配置有改变,就会重启activity
C launchMode为singleTask的时候,通过Intent启到一个Activity, 如果系统已经存在一个实例,系统就会将请求发送到这个实例上, 但这个时候,系统就不会再调用通常情况下我们处理请求数据的onCreate方法,而是调用onNewIntent方法
D 用户正在操作某个Activity,这时如果其他应用程序需要内存。 此时的Activity是Foreground process,应该按照Empty process,Background process,Service process,Visible process顺序kill,最后才是前台进程。
Android系统对下列哪些对象提供了资源池
正确答案: A C 你的答案: A B D (错误)
Message
Thread
AsyncTask
Looper
A.Message提供了消息池,有静态方法Obtain从消息池中取对象;
B.Thread默认不提供资源池,除非使用线程池ThreadPool管理;
C.AsynTask是线程池改造的,池里 默认提供(核数+1)个线程进行并发操作,最大支持(核数 * 2 + 1)个线程,超过后会丢弃其他任务;
D.Looper,每个Looper创建时创建一个消息队列和线程对象,也不是资源池;
因此答案为AC
下列关于IntentService与Service的关系描述错误的是
正确答案: C D 你的答案: A B C (错误)
IntentService是Service的子类
IntentService在运行时会启动新的线程来执行任务
启动方式不同
没有区别
IntentService是继承Service的,那么它包含了Service的全部特性,当然也包含service的生命周期,那么与service不同的是,IntentService在执行onCreate操作的时候,内部开了一个线程,去你执行你的耗时操作。
下面关于Android中定义style和theme的描述正确的是?
正确答案: A B D 你的答案: A B C D (错误)
都可以减少重复属性设置
style可以作用在Activity上
Theme类可以继承
一个TextView的style中定义了textColor属性,TextView本身也设置textColor属性,那么TextView本身定义的优先级较高
A 不提了
B的解释
官方文档定义如下
A style is a collection of properties that specify the look and format for a View or window
A theme is a style applied to an entire Activity or application
所以B对
补充一句:style和theme本质上就是同一个东西,xml格式完全相同,只是我用在activity上我就叫他theme,我用在view上我就叫他style。唯一的区别就是style里头控制的各个属性了,某些属性是只有针对Activity才能生效的(你view有标题栏嘛有状态栏有导航栏吗嘛?但是反过来Activity内部却有一个继承自View的Decorview) 。所以style可以作用在activity上,但是theme却不能反过来作用在view上
至于C,应该就如一楼C.C.所说的,出题人所说能不能继承指的是Theme这个类的不可继承吧,强调的是类为final所以不能继承。而在XML里头使用parent来指明父Theme这种不属于类的继承。 也算是有歧义的题目了,因为不知道“继承”是指类的这种狭义的继承还是后者那种广义的继承。
不妨补充一下XML解析方式,遇到parent之后之后就去parent里头解析,然后如此递归,解析完各级的父XML之后,再回到子XML解析。然后后解析的XML元素覆盖前面解析的同名XML元素,就是模拟了类的继承啦
所以也能顺便推出D是对的,因为子覆盖父
话说牛客网的题目和答案还会自己变来变去我也是醉了
在一个ListView中,显示的行布局有多种不同形式,例如某些行只有ImageView,而另外一些行只有TextView,需要重写哪几个方法?
正确答案: A B C D 你的答案: B C D (错误)
getCount()
getItemId()
getItemViewType()
getViewTypeCount()
使用SimpleAdapter作为适配器时,支持三种类型的 View,而且是按照如下顺序进行匹配:
继承Checkable接口
TextView
ImageView
CompoundButton 声明如下:
1
public abstract class CompoundButton extends Button implements Checkable
可见他是实现了Checkable接口的按钮,因此也在入选范围内。