ViewHolder为什么是被设计成static类型的
来源:互联网 发布:手机版 淘宝 人工客服 编辑:程序博客网 时间:2024/05/22 06:44
http://my.oschina.net/u/579493/blog/183766
ViewHolder为什么是被设计成static类型的,本人一直没弄清楚。在网上找了些资料但是一直没能看到一个能说服我的理由。又说节省内存,保持对象的唯一性,还有说保持图片不错乱但是个人感觉都不怎么靠谱。今天我试了下将static去掉照常运行没感觉和以前有什么区别。后来我查了下static类的一些特性,首先ViewHolder是一个内部类若是static类的话则不需要依赖外部类的对象。也就是说只有static的内部类的成员变量才可以被声明成static类型,若内部类不是static类型的则不可以声明静态成员变量。不知道是不是static内部类的这个特性吸引了设计者?如果有谁清楚这个问题还请不吝赐教。
非static内部类会持有外部类的引用,这样就会涉及到外部类的释放依赖内部类。如果内部类过多的引用外部类的话,这样很容易造成外部类得不到释放。
0 0
- ViewHolder为什么是被设计成static类型的
- 为什么Listview的viewholder要用static修饰
- 为什么static成员的类型可以是类本身?又为什么非static成员被限定声明为其自身类对象的指针或引用?
- listview优化为什么要static class ViewHolder
- ViewHolder定义时类型为static
- spring注入时bean的set方法为什么不能是static类型的?
- spring注入时bean的set方法为什么不能是static类型的?
- spring注入时bean的set方法为什么不能是static类型的?
- spring注入时bean的set方法为什么不能是static类型的?(为什么要用单例模式而不是静态方法)
- 为什么我们创建ListView的ViewHolder要使用static去声明
- 为什么mian函数必须是static的
- ViewHolder为什么要被声明成静态内部类
- 为什么使用 ViewHolder 使用ViewHolder与不使用的区别
- android ListView的优化之 static ViewHolder
- 为什么String类型是不可变的?
- String类为什么是final类型的
- String类为什么是final类型的
- 泛型类的类型为什么不能是基本
- 使用bootstrapvalidator的remote验证经验
- Android Loading SQLite Data Into SpinnerView
- Shell部分2
- IIS添加mime类型
- verilog练习
- ViewHolder为什么是被设计成static类型的
- noip2016普及组复赛总结
- c语言照样解决脑筋急转弯
- 在图像上画线(给出任意两个点)c代码实现
- 最详细的Log4j使用教程
- ubuntu下有道字典
- Nexus6p优化
- Android之垂直跑马灯
- 《okhttp返回json数据:com.squareup.okhttp.internal.http.RealResponseBody@2b88614》