- 博客(5)
- 收藏
- 关注
原创 2020阿里P8进阶学习路线,从0开始教你应该学什么,怎么学不走弯路
初级学什么 Android基础 Application生命周期 Android Activity生命周期 Android Service、IntentService,Service和组件间通信 Activity的onNewIntent Fragment的懒加载实现,参数传递与保存 ContentProvider实例详解 BroadcastReceiver使用总结 Android消息机制 Binder机制,共享内存实现原理 Android 事件分发机制 Android 多线程的实现:Thread、Handl
2021-12-30 11:53:22
1300
原创 Activity的任务栈Task以及启动模式与Intent的Flag详解(经典博文,值得收藏
把TASK比作一个班级,affinity则更像是这个班级的班级名称,学校比做系统,Activity更像是班级里的学生 如果没有对activity设置该属性的话,默认为application的taskAffinity,如果application也没有设置,则为app的包名. 启动一个singleTask模式的activity,会首先在系统中找与它的taskAffinity属性一致的任务栈, 先找task 没有特别指定taskAffinity,则为当前的task 如果指定了taskAffinit.
2021-12-27 11:09:55
612
原创 java多线程Thread join与CountDownLatch源码分析
} } else { while (isAlive()) { long delay = millis - now; if (delay <= 0) { break; } wait(delay); now = System.currentTimeMillis() - base; } } } 首先,join方法是线程对象的实例方法,并不同于sleep方法。并且被 synchronized关键字被修饰,说明要进入join方法,必须获得线程的对象锁。所以join(long millis)方法,指的是获取对象锁
2021-12-23 00:15:24
156
原创 java反射-变量键值对排序
2、解决方案 2.1 方案 (1)使用@RequestBody将json转换成对象; (2)使用反射机制获取键值对,需要使用treemap,treemap会按照首字母顺序排序插入; (3)从map中按顺序遍历出键值对; 1和3就简单说一下,重点是2。 2.2 上代码及说明 2.2.1 实体类ReflesTes1与ReflesBase public class ReflesTest1 extends ReflesBase{ private String aLaowang; private String
2021-12-23 00:13:12
206
原创 Java利用MessageFormat实现短信模板的匹配
MessageFormat方法的介绍 MessageFormat用来格式化一个消息,通常是一个字符串,比如: String str = “I’m not a {0}, age is {1,number,short}, height is {2,number,#.#}”; 而MessageFormat可以格式化这样的消息,然后将格式化后的字符串插入到模式中的适当位置,比如: 将str中的{0}用"pig"替换,{1,number,short}用数字8替换,{2,number,#.#}用数字1.2替换。 那么最
2021-12-23 00:11:41
559
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅