ListView优化中View Holder为什么用static声明为静态内部类
来源:互联网 发布:淘宝文艺女装店 编辑:程序博客网 时间:2024/04/30 03:51
ListView优化中ViewHolder要不要定义为static静态内部类?
在看面试题的,发现存在这个问题,下来百度了下,发现很纠结,涉及到了内部类对外部类的引用,静态类的生命周期等java知识,现总结如下:
static class ViewHolder {
//定义listView item中相应的控件
}
这里的ViewHolder类需不需要定义成static,根据实际情况而定,如果item不是很多的话,可以使用,这样在初始化的时候,只加载一次,可以稍微得到一些优化;
不过,如果item过多的话,建议不要使用。因为static是Java中的一个关键字,当用它来修饰成员变量时,那么该变量就属于该类,而不是该类的实例。所以用static修饰的变量,它的生命周期是很长的,如果用它来引用一些资源耗费过多的实例(比如Context的情况最多),这时就要尽量避免使用了。
0 0
- ListView优化中View Holder为什么用static声明为静态内部类
- 为什么内部类中有static成员时内部类也必须声明为static
- Android常用控件ListView的简单优化之一: 在ViewHolder中定义static静态内部类
- 【Java语法】java中成员内部类内为什么不允许有任何静态声明搜索
- listview的Adapter性能优化之viewholder终极用法,无需生成holder内部类类
- static静态内部类
- 为什么 内部类 不可以声明 静态变量
- ViewHolder为什么要被声明成静态内部类
- 非静态内部类中为什么不能存在静态变量
- Java中Static Class及静态内部类和非静态内部类的不同
- java为什么非静态内部类中不能有static修饰的属性,但却可以有常量?
- 关键字 static(非静态内部类&&静态内部类)
- Java中Static Class及静态内部类和非静态内部类与静态导包
- 深入浅析Java中Static Class及静态内部类和非静态内部类的不同
- 深入浅析Java中Static Class及静态内部类和非静态内部类的不同
- 静态内部类(Static Inner Class)
- 静态内部类(Static Inner Class)
- Java之静态内部类(static class)
- Socket
- typeof的用法 typeof的返回值是一个字符串 返回的字符串类别
- 天线增益
- leetcode 27 Remove Element
- 入门训练 园的面积
- ListView优化中View Holder为什么用static声明为静态内部类
- Android---IPC机制
- python字符串格式化
- luogu【P1706】全排列问题
- test 10 problem C:最近公共祖先(线段树+乱搞)
- 进程间相互通信(pipe方式)
- CentOS7.0安装Docker
- canvas绘制渐变
- [Python爬虫] 在Windows下安装PIP+Phantomjs+Selenium