1、怎么实现多线程?
2、线程间怎么通信?
3、handler机制;
4、handler的post和postDelay是怎么做的?
5、有序广播和无序广播的区别?
(1)BroadcastReceiver所对应的广播分两类:普通广播和有序广播。
(2)普通广播通过Context.sendBroadcast()方法来发送。它是完全异步的。 所有的receivers接收器的执行顺序不确定。因此,所有的receivers接收器接收broadcast的顺序不确定。这种方式效率更高。但BroadcastReceiver无法使用setResult系列,getResult系列及abort系列API
(3)有序广播是通过Context.sendOrderedBroadcast来发送。所有的receiver依次执行。 BroadcastReceiver可以使用setResult系列函数来结果传给下一个BroadcastReceiver,通过getResult系列函数来取得上个BroadcastReceiver返回的结果,并可以abort系列函数来让系统丢弃该广播让,使用该广播不再传送到别的BroadcastReceiver。可以通过在intent-filter中设置android:priority属性来设置receiver的优先级。优先级相同的receiver其执行顺序不确定。 如果BroadcastReceiver是代码中注册的话,且其intent-filter拥有相同android:priority属性的话,先注册的将先收到广播。
(4)有序广播,即从优先级别最高的广播接收器开始接收,接收完了如果没有丢弃,就下传给下一个次高优先级别的广播接收器进行处理,依次类推,直到最后。
6、Activity生命周期;
7、启动模式以及各种启动模式下的startActivityForResult
8、android 7.0 8.0 9.0的新特性
9、讲一讲android的动画
10、looper和线程是怎么对应的
11、service生命周期、onStartCommand的返回值有什么作用
12、所有的view都不可以在子线程更新吗
13、java 三大特性
(1)封装:封装指的是属性私有化,根据需要提供setter和getter方法来访问属性。即隐藏具体属性和实现细节,仅对外开放接口,控制程序中属性的访问级别。封装是为了增强安全性和简化编程,使用者不必在意具体实现细节,而只是通过外部接口即可访问类的成员。
(2)继承:继承是指将多个相同的属性和方法提取出来,新建一个父类。Java中一个类只能继承一个父类,且只能继承访问权限非private的属性和方法。 子类可以重写父类中的方法,命名与父类中同名的属性。继承是为了代码复用。
(3)多态:多态可以分为两种:设计时多态和运行时多态。设计时多态:即重载,是指Java允许方法名相同而参数不同(返回值可以相同也可以不相同);运行时多态:即重写,是指Java运行根据调用该方法的类型决定调用哪个方法。多态目的是为了增加代码的灵活度。
14、注解了解吗
15、四大组件
16、反射说一下
17、java的引用
18、讲一讲垃圾回收、gcroots是什么?
19、加密了解吗
20、http和https的区别
(1)https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。
(2)http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl/tls加密传输协议。
(3)http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
(4)http的连接很简单,是无状态的;HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
21、接口和抽象类的区别
全部评论
(4) 回帖