美文网首页
2018-01-11三题

2018-01-11三题

作者: 吴国友 | 来源:发表于2018-01-11 17:17 被阅读5次
1.异常处理完成以后,Exception对象会发生什么变化?

Exception对象会在下一个垃圾回收过程中回收掉。

2.finally代码块和finalize()方法有什么区别?

无论是否抛出异常,finally代码块都会执行,它主要是用来释放应用占用的资源。finalize()方法是Object类的一个protected方法,它是在对象呗垃圾回收之前由Java虚拟机来调用的。

Android中线程与线程,进程与进程之间如何通信?

1.一个Android程序开始运行时,会单独启动一个Process。默认情况下,所有这个程序中的activity或者service都会跑这个Process。默认情况下,一个android程序也只有一个Process,但一个Process下却可以有许多个Thread。
2.一个android程序开始运行时,就有一个主线程Main Thread被创建该线程主要负责UI界面的显示、更新和控件交互,所以又叫UI Thread。一个Android程序创建之初,一个Process呈现的是单线程模型-即MianThread,所有任务都在一个线程中运行。所以,Main Thread 所调用的每一个函数,其耗时应该越短越好。而对于比较费时的工作,应该没法交给子线程去做,以避免阻塞主线程(主线程被阻塞,会导致程序假死现象);
3.android单线程模型:android UI 操作并不是线程安全的并且这些操作必须在UI线程中执行。如果再子线程中直接修改UI,会导致异常。
4.android的IPC(进程间通信)机制。IPC是内部进程通信的检测,是共享命名管道的资源。Android中的IPC机制是为了让activity和Service之间可以随时的进行交互,故在Android中该机制,值适用于activity和Service之间的通信,类似于远程方法调用,类似于C/S模式的访问。通过定义AIDL接口文件来定义IPC接口。servier端实现IPC接口,Client端调用IPC接口本地代理。

相关文章

网友评论

      本文标题:2018-01-11三题

      本文链接:https://www.haomeiwen.com/subject/vfrtoxtx.html