面试题答案_面试题本及答案

2020-02-28 其他范文 下载本文

面试题答案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“面试题本及答案”。

android中的动画有哪几类,它们的特点和区别是什么?

(两种,一种是Tween动画、还有一种是Frame动画。Tween动画,这种实现方式可以使视图组件移动、放大、缩小以及产生透明度的变化;另一种Frame动画,传统的动画方法,通过顺序的播放排列好的图片来实现,类似电影。)

handler机制的原理

andriod提供了 Handler 和 Looper 来满足线程间的通信。Handler 先进先出原则。Looper类用来管理特定线程内对象之间的消息交换(Meage Exchange)。1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Meage Queue(消息队列)。2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到Meage Queue里;或者接收Looper从Meage Queue取出)所送来的消息。3)Meage Queue(消息队列):用来存放线程放入的消息。4)线程:UI thread 通常就是main thread,而Android启动程序时会替它建立一个Meage Queue。

说说mvc模式的原理

它在android中的运用 MVC(Model_view_contraller)” 模型_视图_控制器”。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要 Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会 从潜在的Model中获取数据来刷新自己

(View重绘和内存泄露面试经常问的问题)

Activity的生命周期

在一个Activity正常启动的过程中,他们被调用的顺序是 onCreate-> onStart

->onResume, 在Activity被干掉的时候顺序是onPause-> onStop-> onDestroy,这样就是一个完整的生命周期,但是有人问了,程序正运行着呢来电话了,这个程序咋办?中止了呗,如果中止的时候新出的一个Activity是全屏的那么:onPause->onStop,恢复的时候onStart->onResume,如果打断 这个应用程序的是一个Theme为Translucent 或者Dialog 的Activity那么只是onPause ,恢复 的时候onResume

IPC及原理

IPC是内部进程通信的简称,是共享“命名管道”的资源。Android中的IPC机制是为了让Activity和Service之间可以随时的进行交互,故在Android中该机制,只适用于Activity和Service之间的通信,类似于远程方法调用,类似于C/S模式的访问。通过定义AIDL接口文件来定义IPC接口。Servier端实现IPC接口,Client端调用IPC接口本地代理 在Java中如何引入C语言

可以用JNI接口来实现

什么时候使用Service?

比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记 录你地理信息位置的改变等等,总之服务嘛,总是藏在后头的。请描述一下Broadcast Receiver,及注册方法

Broadcast Receiver用于接收并处理广播通知(broadcast announcements)。多数的广播是系统发起的,如地域变换、电量不足、来电来信等。程序也可以播放一个广播。程序可以有任意数量的 broadcast receivers来响应它觉得重要的通知。broadcast receiver可以通过多种方式通知用户:启动activity、使用NotificationManager、开启背景灯、振动设备、播放声音等,最典型的是在状态栏显示一个图标,这样用户就可以点它打开看通知内容。通常我们的某个应用或系统本身在某些事件(电池电量不足、来电来短信)来临时会广播一个Intent出去,我们可以利用注册一个Broadcast Receiver来监听到这些Intent并获取Intent中的数据。

为什么要用ContentProvider?它和sql的实现上有什么差别?

使用ContentProvider可以将数据共享给其他应用,让除本应用之外的应用也可以访问本应用的数据。它的底层是用SQLite数据库实现的,所以其对数据做的各种操作都是以Sql实现,只是在上层提供的是Uri

AIDL的全称是什么?如何工作?能处理哪些类型的数据?

AIDL是一种接口定义语言,用于约束两个进程间的通信规则,供编译器生成代码,实现Android设备上的进程间通信。进程之间的通信信息首先会被转换成AIDL协议消息,然后发送给对方,对方受到AIDL协议消息后再转换成相应的对象。AIDL支持的类型包括Java基础类型和String,List,Map,CharSequence,如果使用自定义类型,必须实现Parcelable接口

activity的启动模式有哪些?

在android里,有4种activity的启动模式,分别为:

“standard”(默认)

“singleTop”

“singleTask”

“singleInstance”

android dvm 的进程和Linux的进程,应用程序的进程是否为同一个概念: 答:dvm是dalivk虚拟机。每一个android应用程序都在自己的进程中运行,都拥有一个dalivk虚拟机实例。而每一个dvm都是在linux的一个进程。所以说可以认为是同一个概念。

Android中常用的五种布局:

答:LinearLayout线性布局;AbsoluteLayout绝对布局;TableLayout表格布局;RelativeLayout相对布局;FrameLayout帧布局;

Android的五种数据存储方式:

答:sharedPreferences;文件;SQLite;contentProvider;网络

请解释下在单线程模型中Meage、Handler、Meage Queue、Looper之间的关系:

答:Handler获取当前线程中的looper对象,looper用来从存有Meage的Meage Queue里取出meage,再由Handler进行meage的分发和处理。

android 中有哪几种解析xml的类?官方推荐哪种?以及它们的原理和区别: 答:XML解析主要有三种方式,SAX、DOM、PULL。常规在PC上开发我们使用Dom相对轻松些,但一些性能敏感的数据库或手机上还是主要采用SAX方 式,SAX读取是单向的,优点:不占内存空间、解析属性方便,但缺点就是对于套嵌多个分支来说处理不是很方便。而DOM方式会把整个XML文件加载到内存 中去,这里Android开发网提醒大家该方法在查找方面可以和XPath很好的结合如果数据量不是很大推荐使用,而PULL常常用在J2ME对于节点处 理比较好,类似SAX方式,同样很节省内存,在J2ME中我们经常使用的KXML库来解析。Collection 和 Collections的区别

Collection是集合类的上级接口,继承与他的接口主要有Set 和List.Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作

面向对象的特征有哪些方面

封装性、继承性和多态性是面向对象的三大特点。

《面试题答案.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
面试题答案
点击下载文档
相关专题 面试题本及答案 面试题 答案 面试题本及答案 面试题 答案
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文