- 泛型非常有用,笑言之:『泛泛而谈』的类型,意思就是这个类型是一个不确定的类型,只有具体实现的时候才确定是什么类型。
- 有一种东西,可以是很多种类型都通用的,但只有使用的时候才确定这个到底是什么具体的类型。
- 举个例子:比如你有一个盒子,里面可以放任意
不易碎的东西
,那这个东西不确定,就可以先定义成『泛泛而谈』的类型
,这时就可以计算盒子里有多少个东西,添加,减少东西的方法。- 当然,最典型的例子就是各种集合类,你可以在各种集合里放任意类型,比如:ArrayList
- 这里你可能想:『那我就放入一个Object,到使用时强制类型转换过来,不就得了吗?为什么非要用泛型呢?没必要啊。』少侠莫慌,往下看它的两个优点就知道了,且听我慢慢道来…
周末小记
周末,天气阴凉,父母来沪,弟弟做伴,做两日游,其实只得一日半,行程匆匆,几未休息,家人团聚,新成就达成。深有感悟。
Android多进程开发
开始即为成功的一半,占位先
Processes and Threads
- 假设有一个Android应用程序名字叫做DemoA。
- 前提条件:DemoA完全没有任何组件在运行。
- 时机:当DemoA开始启动运行时。
- 现象1:Android系统会为这个应用程序启动一个新的Linux进程并且运行一个单独的线程。
- 现象2:在默认情况下,同一个应用的所有组织会运行在相同的一个进程以及相同的一个线程(也被称为
主线程||UI线程
)中。如果一个应用程序的组件启动时,系统中已经存在这个应用运行的进程(因为应用程序中已经有其它组件在运行),此时这个组件会运行在当前这个进程以及线程中。 - 当然,我们可以运行不同的组织在自己单独的进程中,并且我们可以为任一进程创建额外的线程。
用gradle编译任意结构的Android项目
小议Android多进程以致Application多次初始化
最近遇到一个bug,当应用加了多进程后,比如总共进程数为N,会出现在startService()
时onStartCommand()
方法会被重复调用(N-1)
次的奇怪现象。
祸起
最近遇到两个模块互不相干却受到影响的奇怪问题,一个push模块和一个DaemonProcess模块在一起后,会出现如下现像的问题
当DaemonProcess为应用加了多进程后,比如总共进程数为N,会出现push模块在
startService()
时onStartCommand()
方法会被重复调用(N-1)
次的奇怪现象。
Android Studio使用技能分享(2)--全面提升你的开发效率,让你运指如飞
去年我曾经做过一个这方面的分享,现在我再次做关于Android Studio 使用技能分享的第二季,我为什么做这个分享呢,因为我们每天工作的大部分时间就是在代码中傲游,自从Android Studio出来后,它极大地提高了我们的效率,小明多次说过,提升效率就是提升生产力!
想不再加班吗?想早点回家吗?想单位时间内价值最大吗?
这些还是值得你花点时间去熟练的,正所谓磨刀不误砍柴工。
正如我的副标题所说:全面提升你的开发效率,让你运指如飞。
下面会介绍很多的快捷方法,我今天会讲很多技巧,但你不需要立刻全部记住,只是让大家先了解有这些方法,有个初步的印象,然后后面在使用中再一步步熟悉它们。