部分面试参考面试题_第1页
部分面试参考面试题_第2页
部分面试参考面试题_第3页
部分面试参考面试题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、以下参考,整理人:、一、-乌龙了),索尼,(我以为是招 Android 开发,结果是 bug 测试分析师,1、Android 适配方式有哪些?dp、sp、px 等,其中 dp 一般用来设置布局控件宽高,sp 用来修饰文字(这样部系统更改文字才会起作用,px 就不会起作用)根据屏幕的宽高重新设置布局内(3)利用 LinearLayout 的weight 属性,虽然会失去一些性能,但是只要不是嵌套在 ListView这种经常需要重新填充的布局,以现在机,都可以忽略掉这种性能。2、线程有哪几种方式?handler 的使用与原理?我知道的就有:Handler+Thread、Asyn Handler 的

2、使用从 sendMessage()的使用与原理就是Handler Message MessageQueuek、Timer+timerTask、HandlerThread。t 两种方式来讲Looper(请参考老师笔记)3、异步任务(Asynk)的使用以及线程操作时如何取消?主要从三个泛型含义需要重写的方法线程操作在读流过用标识位的方式取消4、数据库()的操作方法,数据库更新方式?在 android 中当需要操作数据库的时候需要得到一个OpenHelper 对象,而OpenHelper 是一个抽象类,用户需要继承这个类,并实现该类中的一些方法。OpenHelper 之后就拥有了以下两个方法:get

3、ReadableDatabase() 创建或者打开一继承个查询数据库, getWritableDatabase() 创建或者打开一个可写数据库。他们都会返回Database 对象,用户通过得到的Database 对象进行后续操作。):当数据库需要修改的时候,Android 系统会主更新方法 onUpgrade(动的调用这个方法。一般Database,在这个方法里边删除数据库表,并建立新的数据库表,当然是否还需要做其他的操作,完全取决于应用程序的需求。5、什么情况会出现 ANR(应用无响应)在 Android 里,应用程序的响应性是由 Activity Manager 和 WindowManag

4、er 系统服务监视的 。当它监测到以下情况中的一个时,Android 就会针对特定的应用程序显示 ANR:在 5 秒内没有响应输入的事件(例如,按键按下,屏幕触摸)BroadcastReceiver 在 10 秒内没有执行完毕造成以上两点的原因有很多,比如在主线等。做了非常耗时的操作,比如说是,io 异常6、给了两张纸,上面全都 Log 日志,问在不看代码的情况下分析这种错误日志。主要就是空指针异常,最常见的原因是就是“.”前面那个变量有问题。还有一个关于 Service 异常的。呼这种问题需要有大量的测试经验才行啊。7、Service 两种使用方法以及他们的生命周期?1 通过startSer

5、viervice 会经历 onCreate-onStart,stopService 的时候直接onDestroy,如果是调用者(TestServiceHolder)自己直接退出而没有调用 stopService 的话,Service 会一直在运行。下次TestServiceHolder 再起来可以 stopService。2 通过 bindServiervice 只会运行 onCreate,这个时候 TestServiceHolder 和 TestService 绑定在一起,TestServiceHolder 退出了,Srevice 就会调用onUnbind-onDestroyed,所谓绑定在

6、一起就共存亡了。8、java 的 sleep 与 wait区别?1,这两个方法来自不同的类分别是 Thread 和 Object.2,最主要是 sleep 方法没有制块或者方法。锁,而 wait 方法了锁,使得其他线程可以使用同步控3,wait,notify 和 notifyAll 只能在同步控制方法或者同步控制块里面使用,而 sleep 可以在任何地方使用.4,sleep 必须捕获异常,而wait,notify 和 notifyAll 不需要捕获异常.二、,(问下面问题的人,其实对 java Android 都不太了解)1、栈和堆的区别?(要回答 JAVA 方向的)栈里只能存放基本数据类型和

7、地址new 一个对象通常在堆里会产生一个地址,可以用栈来存放。2、拆箱装箱是什么?(只有基本数据类型有包装类这一说,包装类有拆箱装箱的区别)(1)为了配合泛型使用:有的泛型需要型,但 java 设计之初没有考虑到这个问题,后之类的,所以就搞了这个包装类。来为了解决泛型也能使用、char、(2)自动拆装箱:但是要注意底层调用的方式,例法。3、Set 与 List 的区别?eger to时,就是用了 valueOf 方List 和 Set 都是接口。他们各自有自己的实现类,有无顺序的实现类,也有有顺序的实现类。最大的不同就是 List 是可以重复的。而Set 是不能重复的。List 适合经常追加数

8、据,删除数据。但随机取数效率比较低。Set 适合经常地随机效率比较低。4、抽象类与接口区别?,删除。但是在遍历时第一点 接口是抽象类的变体,接口中所有的方法都是抽象的。而抽象类是在而不去实现它的类。方法的存第二点第三点第四点接口可以继承,抽象类接口定义方法,不能实现,而抽象类可以实现部分方法。接口中基本数据类型为 sic 而抽类象不是的。当你关注一个事物的本质的时候,用抽象类;当你关注一个操作的时候,用接口。5、final、finally、finalize()之间的区别?final 是修饰符。加 final 的类,不能被继承。加 final 的变量,必须有初始值,只的方法,只能调用,不能重载。

9、finally 是异常捕捉时进行清除操作的代码块。加 finalfinalize()是 java回收器在确定某个对象失去后被调用把该对象出内存的方法。该方法在Object 类中定义,所有类均可以使用。6、get、t 的区别?1. get 是从服务器上获取数据,t 是向服务器传送数据。2. get 是把参数数据队列加到提交表单的 ACTION 属性所指的 URL 中,值和表单内各个字段一一对应,在 URL 中可以看到。t 是通过 HTTPt 机制,将表单内各个字段与其内容放置在HTML HEADER 内一起传送到 ACTION 属性所指的URL 地址。用户看不到这个过程。3. 对于 get 方式

10、,服务器端用 Request.QueryString 获取变量的值,对于端用 Request.Form 获取提交的数据。t 方式,服务器4. get 传送的数据量较小,不能大于 2KB。t 传送的数据量较大,一般被默认为不受限制。但理论上,IIS4 搜索中最大量为 80KB,IIS5 中为 100KB。5. get 安全性非常低,t 安全性较高。但是执行效率却比t 方法好。7、Android 生命周期中,每个方法(一共七个)的使用场景是?怎样保存一个 Activity 被销毁时的状态?onCreate():UI 被初始化。onStart():UI 被前台呈现。onResume():在 acti

11、vity 成为前台程序时调用,也就是用户可和activity 互动时调用。onReStart()在一个 activity 被 stop 后重启时调用。onStop()就是在 activity 的状态变为 stopped 状态时调用。onDestroy():在 activity生命周期的最后,即关闭时被调用。onPause():其他 Activity 的onResume()被调用的,在前台呈现时,当前的 Activity 的onPause()被调用。onSavedInstane(Bundle obj),现场保护会以键值对形式存放被销毁的 Activity 状态。8、Android 有几大布局,他

12、们之间的区别是?有 5 个布局。FrameLayout 是所添加的控件都在左上角,一次往上叠加。LinearLayout 是水平或垂直的布局,子控件不能重合。RelativeLayout 是相对性的布局,相对关系在子控件和子控件,也会在子控件和父控件之间。TableLayout 是行列管理控件,类似与 HTML 的 Table。Absoluayout 是绝对布局,放置空间的时候需要指定空间 XY 值。由于 Android屏幕很多很杂,碍于适配原因,此布局已弃用。9、一个型变量,在 java、C 之间分别占几个字节?Java 的是 4 个字节C 的根据编译器的不同,ANSI(TC)标准是 2 个

13、字节,10、http 与 https 的区别?http 和 https 使用的是完全不同的连接方式,用的端口也不一样,前者是 80,后者是 443。http 的连接很简单,是无状态的,HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、证的网络协议要比 http 协议安全。认三、,卷子,两道题(这是需要长期做题才能会的题,如果不能马上看懂我写的代码,建议还是不要花时间在这种题上面了。)1、只遍历一遍,找到单链表的倒数第 n 位?(只写出思路)太复杂,找到个自己看下吧/iui/archive/2011/11/06/2238606.html2、实现一个算法将一个字符串的单词反转过来。

14、(写出具体实现)例:“ao1 abc good!”其中a 和abc 是单词。则结果:”ao1 cba good!”JAVA 代码:public class Text public sic void main(String args) String str = ao1 abc good!;/ 需要结果ao1 cba good!str.split( );/ 拆分字符数组String ss =String result System.out.pr=;/ 最终的拼接结果ln(ss.length);i ss.length; i+) for (i = 0;String s = ssi;/ 得到第一个词/* 判断是不是单词 */isDanCi = true;for (j = 0; j = a & ch = A& ch = B)isDanCibreak;= false;System.out.pr System.out.pr if

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论