安卓笔试题.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
安卓笔试题

Java基础部分 1.谈谈hashmap和hashtable的区别,如何去遍历一个map 答: Hashtable继承了Dictionary,是线程安全的,键值对中不能出现null。 Hashmap实现了Map接口,是Hashtable的轻量级实现(非线程安全的实现),即多个线程访问Hashmap时需要为其准备外同步,且Hashmap的键、值均可以为null。 遍历map有两种方式:keyset(效率低)和entryset(效率高),两种方式都需要创建Iterator迭代器对象,不同的是使用keyset需要从迭代器中获取map的key,并且通过key获取value(key=iterator.next(); value=map.get(key));使用entryset则需要从迭代器中获取Map.Entry对象,再从中获取map的key和value(Map.Entry entry=(Map.Entry)iterator.next(); key=entry.getKey(); value=entry.getValue())。 Map map=new HashMap(); Iterator iterator=map.entrySet().iterator(); while(iterator.hasNext()){ Map.Entry entry=(Map.Entry)iterator.next(); Object key=entry.getKey(); Object value=entry.getValue(); } Map map=new HashMap(); Iterator iterator=map.keySet().iterator(); while(iterator.hasNext){ Object key=iterator.next(); Object value=map.get(key); } 2.说出线程同步的几个方法 答: synchronized同步代码块:synchronized(同步监视器){…} synchronized修饰的同步方法:public synchronized 返回值 方法名(){…} wait();:wait方法必须在用有synchronized修饰的地方才能使用 notify();:唤醒了有相同同步监视器的wait(),从wait()的下一行代码开始执行 notifyAll();:唤醒了所有调用wait()的方法 3. java中char占几个字节,为什么 答: 2个字节。java是采用unicode编码,使用16位的编码空间,即每个字符都占两个字节 4. try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行?什么时候被执行?在return之前还是之后 答:会被执行,在return之后执行,finally{}中的语句只有在虚拟机停止的情况下才不执行。 Android基础部分 1. 假设activity所有的生命周期函数里都已经调用了标准输出,比如,当Activity的onCreate被调用时,会输出:A-onCreate();那么当Activity A跳转至Activity B时,写出此时的输出结果 答: //A-onCreate(); //A-onStart(); //A-onResume(); B-onCreate(); B-onStart(); B-onResume(); A-onPause(); 2.启动service有几种方式,说出他们之间的主要区别 答: 调用startService():通过此种方法启动的service会一直运行在后台直到stopService()或stopSelf()方法被调用。 调用bindService():通过此种方法启动的service会与调用者绑定,如果这个service还没有被启动,那么service启动时将不会调用onStart(),只调用onCreate()和onBind(),调用者被销毁时,service也被销毁 3. intent.putExtra时,如果传递的不是基本类型,而是一个”Object”,那么对这个对象有什么要求?还是说任何对象都可以进行传递? 答: 必须实现Serializable接口,实现CharSequence接口或者实现Parcelable接口的对象才可以进行传递。 4.当调用startActivityForResult时,如何获取并处理返回的结构 答: 通过onActivityResult(int requestCode, int resultCode, Intent data)处理返

文档评论(0)

liudao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档