Java中隐藏的this变量和局部变量可能引发的内存泄露问题
背景
众所周知,在Java中,成员方法内可以使用this来引用当前对象,使用起来特别方便。但是在JVM中方法是在方法区中,所有的类的对象都共用了一个方法区,那么JVM是怎么知道this是指向哪个对象的呢?
其实为了实现这一功能,Java的处理方式很简单,在编译时,为每个成员方法都默默的添加了一个参数this,当调用这个方法时,把当前对象以参数的形式传进去即可。
众所周知,在Java中,成员方法内可以使用this来引用当前对象,使用起来特别方便。但是在JVM中方法是在方法区中,所有的类的对象都共用了一个方法区,那么JVM是怎么知道this是指向哪个对象的呢?
其实为了实现这一功能,Java的处理方式很简单,在编译时,为每个成员方法都默默的添加了一个参数this,当调用这个方法时,把当前对象以参数的形式传进去即可。
issue描述:https://code.google.com/p/android/issues/detail?id=159739
原因:ListView内部的一个bug,在接近顶部时,mFirstPosition提前变为0,导致其他根据mFirstPosition来判断的逻辑错误,从而引发滚动事件异常。
摘自http://developer.android.com/intl/zh-cn/training/articles/perf-tips.html#PackageInner
因为本人安装的是Windows,Ubuntu双系统,所以当时给Ubuntu分配的空间比较小,现在想在Ubuntu下编译Android Rom,但是AOSP代码就是几十G,空间严重不够,因此,准备给Ubuntu增加磁盘空间。
OpenGrok一个快速、便于使用的源代码搜索与对照引擎。它帮助你搜索,对照,定位你的源代码树。它能够明白各种程序文件格式和版本控制历史记录如SCCS,RCS,CVS与Subversion。OpenGrok是OpenSolaris操作系统源文件浏览和搜索的工具。
以下从FragmentActivity.onCreate开始分析Fragment的实例化,以及生命周期。
在Android Studio中,有时一个Projcet下Module比较多,可能有些不需要显示,这时需要隐藏掉一些Module不显示。